Php 在jquery中查找两个选定日期之间的天数

Php 在jquery中查找两个选定日期之间的天数,php,jquery,Php,Jquery,我需要找到两个选定日期之间的天数。我尝试了以下代码,但它返回了一些日期的错误结果 function getDateObject(str) { var arr = str.split("-"); return new Date(arr[0], arr[1], arr[2]); } $('#from_date,#to_date').bind("change paste keyup", function() { var date1 = getDateObject($('#from_d

我需要找到两个选定日期之间的天数。我尝试了以下代码,但它返回了一些日期的错误结果

function getDateObject(str) {
  var arr = str.split("-");
  return new Date(arr[0], arr[1], arr[2]);
}

$('#from_date,#to_date').bind("change paste keyup", function() {
    var date1 = getDateObject($('#from_date').val());
    var date2 = getDateObject($('#to_date').val());
    var days = (date2 - date1) / 86400000;
    alert(days); //it returns -1 for from:2016-01-31 - to:2016-02-01.
    //other dates like from:2016-01-13 - to:2016-01-14 returns 1 correctly
}

请帮助我解决此问题。

您需要正确解析日期,目前:

new Date("2016", "01", "31");
将给予

Wed Mar 02 2016 00:00:00 GMT+0530 (IST)
这就行了

// str should be in yy-mm-dd
function getDateObject(str) {
  return new Date(str);
}

最后我找到了解决办法

function getDateObject(str) {
  var arr = str.split("-");
  return new Date(arr[0], arr[1]-1, arr[2]);//just added -1 in arr[1] that is month.
}

$('#from_date,#to_date').bind("change paste keyup", function() {
    var date1 = getDateObject($('#from_date').val());
    var date2 = getDateObject($('#to_date').val());
    var days = (date2 - date1) / 86400000;
    alert(days); 
}
这给了我所需要的输出


谢谢你们所有人都试图帮助我。

只要用谷歌搜索一下就可以了。。当我在google>>@Mohamed Yousef上键入你的问题标题时,返回相同的结果