Javascript 日期范围选择

Javascript 日期范围选择,javascript,html,jsp,dojo,Javascript,Html,Jsp,Dojo,我试图获取fromDate和toDate之间的天数,因为用户选择的天数不应超过90天。我正在使用dojo获取日期日历。 下面是我尝试过的代码,但输出不是预期的,请建议 <script> function parseDate(str) { var mdy = str.split('-') return new Date(mdy[2], mdy[0]-1, mdy[1]); } function daydiff(first, second) { return (

我试图获取fromDate和toDate之间的天数,因为用户选择的天数不应超过90天。我正在使用dojo获取日期日历。 下面是我尝试过的代码,但输出不是预期的,请建议

<script>
function parseDate(str) {
    var mdy = str.split('-')
    return new Date(mdy[2], mdy[0]-1, mdy[1]);
}

function daydiff(first, second) {
    return (second-first)/(1000*60*60*24);
}

function daysDifference(){
    var fromDate = document.getElementById("fromDate").value;
    var toDate = document.getElementById("toDate").value;
    alert(fromDate);
alert("days difference" + daydiff(parseDate(fromDate),parseDate(toDate)));
}
</script>
<form id="myform" name="myform" action="checkData.htm">


    From Date:<input type="text" name="fromDate" id="fromDate" value="" data-dojo-type="dijit/form/DateTextBox" required="true" constraints="{ datePattern: 'dd-MM-yyyy'}" /> </td>
    To Date:<input type="text" name="toDate" id="toDate" value="" data-dojo-type="dijit/form/DateTextBox" required="true" constraints="{ datePattern: 'dd-MM-yyyy'}"/> </td>
    <input type="submit" value="submit" onclick="daysDifference();"/>

</form>

函数解析日期(str){
var mdy=str.split('-')
返回新日期(mdy[2],mdy[0]-1,mdy[1]);
}
函数daydiff(第一、第二){
返回(第二个第一)/(1000*60*60*24);
}
函数daysDifference(){
var fromDate=document.getElementById(“fromDate”).value;
var toDate=document.getElementById(“toDate”).value;
警报(起始日期);
警报(“日差”+daydiff(parseDate(fromDate)、parseDate(toDate));
}
自日期起:
迄今为止:
请建议如何限制用户选择90天之间的日期范围。

该方法返回1970年1月1日之间的毫秒数。您可以在每个日期运行parse,然后通过减法得到值的差值。然后需要将时间(以毫秒为单位)转换为天

您可以这样尝试:

var fromDate = new Date("7/11/2014");
var toDate = new Date("12/12/2015");
var timeDiff = Math.abs(toDate.getTime() - fromDate.getTime());
var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24)); 
if(diffDays > '90')
alert("Select a date range in 90 dates from toDate");

@scrit:-你能在JSFiddle中给我看一下吗?我已经在JSFIDLE中添加了代码,它对我有用。给我看一下你的代码,这样我就可以查找它了。我试过以dd/MM/yyyyy的相反顺序,也就是当我得到NaN时,现在我修改为MM/dd/yyyy,并得到了预期的输出。谢谢你。