1

我有 2 个文本框,期望格式为mm/dd/yyyy Ex:

03/20/2013

在我费心进行 ajax 调用之前,我想尝试将这些转换为 JS 日期。我如何检查:

Both Dates are in the mm/dd/yyyy format and if they are, then From must be less than to.

谢谢

4

1 回答 1

1

我建议为此使用时刻。Moment 是一个专门用于日期和评估日期的 js 库。您的两个文本框以字符串开头,因此您需要为moment()每个文本框初始化 2 。然后验证它们都是时刻对象。如果是这样,那么确保一个在另一个之后是一件简单的事情。

这是时刻的链接:http: //momentjs.com/

这是我可能使用的代码:

var tb1 = $("#tb1").text(); // get string from "date box 1"
var tb2 = $("#tb2").text(); // get string from "date box 2"

//get timestamp val's so they can be used in moment initialization
var date1 = tb1.split("/"); 
var date2 = tb2.split("/");

    //create moments    
var mom1 = moment([date1[2], date1[1], date1[0]);
var mom2 = moment([date2[2], date2[1], date2[0]);

function validate(mom1, mom2){
    //validate both dates are actual dates
if (mom1.isValid() && mom2.isValid()){
            //compare timestamps to ensure 2nd timestamp is larger 
    if(mom1.unix() < mom2.unix()){
        return true;
    } else {
        return false;
    }
} else {
            //strings aren't dates, return error
    $.error("not valid dates");
}
}
于 2013-03-18T19:04:15.180 回答