Jquery DOB输入要验证的字段

时间:2011-11-25 12:13:07

标签: jquery forms jquery-validate validation

只接受最多31个数字(没有32,没有62等)。

目前效果很好,但如果我打字50/80/1977仍然有效。

我需要验证输入DD MM YYYY。有什么建议吗?

我不想使用datapicker。这个数字必须是英国格式。 DD / MM / YYYY。

E.G. http://jsfiddle.net/davidesitua/bhdry/49/

1 个答案:

答案 0 :(得分:0)

我写这个函数作为另一个问题的答案,但我认为它应该做你想要的 -

function isValidDate(strDate) {
    if (strDate.length != 10) return false;
    var dateParts = strDate.split("/");
    var date = new Date(dateParts[2], (dateParts[1] - 1), dateParts[0]);
    if (date.getDate() == dateParts[0] && date.getMonth() == (dateParts[1] - 1) && date.getFullYear() == dateParts[2]) {
        return true;
    }
    else return false;
}

演示 - http://jsfiddle.net/2r6eX/2/

要使用代码,您可以执行类似 -

的操作
if (!isValidDate(enteredDOB)) {
    $("#invalidDOB").fadeIn("slow");
    return false;
}    

与您的代码集成的代码演示 - http://jsfiddle.net/ScEuV/1/

原始问题中提供了进一步的解决方案 - How to check if a string is a legal "dd/mm/yyyy" date?