如何检查输入的日期是否在90天内?

时间:2011-06-21 19:08:34

标签: javascript jquery validation jquery-validate

我正在使用jQuery的Datepick maxDate选项将日历上的选择限制为90天。但是如果用户想要绕过它,用户可以覆盖它并手动输入日期。如何用javascript检查输入的日期是否在今天的90天之内。日期格式现在为mm / dd / YYYY。防爆。 2011年6月21日

<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/jquery-ui.min.js"     type="text/javascript"></script> 
<input type="text" id="txtMaxDate" />
<input type="submit" />

$(function() {
$("#txtMaxDate").datepicker({
    maxDate: '+90d'
});
$('input:submit').click(function() {
    var today = new Date();
    var targetDate = $("#txtMaxDate").val();
    //$( "#txtMaxDate" ).datepicker( "option", "dateFormat", '@' );
    alert(today);
    alert(targetDate);

});
});

此处示例 - http://jsfiddle.net/6qmPP/1/

1 个答案:

答案 0 :(得分:3)

这似乎很有效:

$(function() {
    $("#txtMaxDate").datepicker({
        maxDate: '+90d'
    });
    $('input:submit').click(function() {
        var today = new Date();
        var targetDate = $("#txtMaxDate").datepicker( "getDate");
        if(Math.round(Math.abs(today - targetDate) / (1000 * 60 * 60 * 24)) > 90) {
            alert("date is more than 90 days from today");
        }
    });
});

正如其他人所说,请确保在服务器端验证这一点。