试图了解时刻js但苦苦挣扎......
我有一个开始和结束日期&时 我有4个文本输入类型,将具有这样的值
开始日期:2015年11月13日 开始时间:下午2:00
结束日期:2015年11月13日 结束时间:下午3:00
我想做两件事, 1.确保日期是日期(有效) 2.检查以确保结束日期&时间不是在开始日期和时间之前时间
var startDateTime = moment(startDate + startTime).format("D-MMM-YYYY h:mm A")
var endDateTime = moment(endDate + endTime).format("D-MMM-YYYY h:mm A")
但是如果我这样做的话
`alert(startDateTime)我刚刚得到"无效日期"
任何想法我做错了什么?
答案 0 :(得分:0)
按照布拉格关于约会有效期的建议......
关于问题2,您需要使用像isBefore
这样的方法:
moment('2010-10-20').isBefore('2010-12-31', 'year'); // false
moment('2010-10-20').isBefore('2011-01-01', 'year'); // true
这直接来自文档:isBefore
答案 1 :(得分:0)
你需要把模式放在当下的第二个参数()我想
startDate = '13-Nov-2015';
startTime = '2:00 PM';
endDate = '13-Nov-2015';
endTime = '3:00 PM';
var startDateTime = moment(startDate +' '+ startTime,"D-MMM-YYYY h:mm A");
var endDateTime = moment(endDate +' '+ endTime, "D-MMM-YYYY h:mm A");
alert(startDateTime.format("D-MMM-YYYY h:mm A"));

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js"></script>
&#13;
答案 2 :(得分:0)
这对我有用
var startDate = moment($("#DateString").val()).format("D-MMM-YYYY");
var endDate = moment($("#DateEndString").val()).format("D-MMM-YYYY");
var endTime = $("#EndTime").val();
var startTime = $("#StartTime").val();
var startDateTime = moment(startDate + ' ' + startTime);
var endDateTime = moment(endDate + ' ' + endTime);
alert(moment(startDateTime).format("D-MMM-YYYY h:mm A"));