如何解决为什么JavaScript运行时错误:对象不支持属性或方法“ getTime”?getTime不是函数
以下代码是MVC C#cshtml文档。
@{
Layout = null;
ViewBag.Title = "Test";
}
<script src="~/Scripts/jquery-1.11.1.min.js"></script>
<script src="~/Scripts/bootstrap-datepicker.js"></script>
<script>
$(document).ready(init);
function init() {
//loadData();
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth() + 1; //January is 0!
var yyyy = today.getFullYear();
if (dd < 10) {
dd = '0' + dd;
}
if (mm < 10) {
mm = '0' + mm;
}
var mdate1 = yyyy + '/' + mm + '/01';
var mdate2 = yyyy + '/' + mm + '/' + dd;
$('#TSDATE').datepicker({
startDate: -Infinity,endDate: "today",format: "yyyy/mm/dd",autoclose: true,todayHighlight: true,language: 'zh-TW'
}).datepicker("setDate",mdate1);
$("#TSDATE").bind("change",function () {
var TSDATE = $("#TSDATE").val().replace(/\//g,'');
var TEDATE = $("#TEDATE").val().replace(/\//g,'');
if (TEDATE == '') {
$('#TEDATE').val($('#TSDATE').val());
} else {
if (TSDATE >= TEDATE) {
$('#TEDATE').val($('#TSDATE').val());
}
}
});
$('#TEDATE').datepicker({
startDate: -Infinity,//startDate: "today",//clearBtn: true,//calendarWeeks: true,mdate2);
$("#TEDATE").bind("change",'');
if (TSDATE == '') {
$('#TSDATE').val($('#TEDATE').val());
} else {
if (TEDATE <= TSDATE) {
$('#TSDATE').val($('#TEDATE').val());
}
}
});
}
</script>
<h2>Test</h2>
<div class="input-group input-daterange">
<input type="text" class="form-control" id="TSDATE">
<div class="input-group-addon">~</div>
<input type="text" class="form-control" id="TEDATE">
</div>
<script src="~/Scripts/bootstrap.min.js"></script>
在我运行代码时,第一个文本框(#TSDATE)的日期选择器显示出来,但无法写入“ yyyy +'/'+ mm +'/ 01'”。第二个文本框(#TEDATE)完全失败,不显示datepicker。iexplore出现错误并显示消息“对象不支持属性或方法'getTime'”。位置在bootstrap-datepicker.js中:
setDate: function(d) {
this.setUTCDate(new Date(d.getTime() - (d.getTimezoneOffset()*60000)));
},
因此,cshtml中的代码可能在此处失败:
}).datepicker("setDate",mdate1);
Chrome浏览器还会弹出“'getTime不是函数”。我已经在网上对同一问题进行了一些研究,问题的关键可能是我使用的.js或我编写的javascript。但是找不到错误的解决方案。我该如何解决?
解决方法
在您的代码中,
import React from "react";
import { withRouter } from "react-router-dom";
const CreateRoom = (props) => {
console.log(props);
const [state,setState] = React.useState({});
return (
<div className="center-wrapper">
<input
className="room-input"
placeholder="Room Name"
onChange={(event) => {
setState({ [event.target.name]: event.target.value });
}}
name="room"
/>
<div
className="btn"
onClick={() => {
props.history.push({
pathname: `/set-user-name`,state: { room_name: state.room },});
}}
>
Create Room
</div>
</div>
);
};
export default withRouter(CreateRoom);
mdate1不是日期,它是字符串。
getTime()对日期对象而不是字符串起作用。这就是您遇到错误的原因 “ getTime不是函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。