jQuery datepicker允许部分日期如“05 /”?

时间:2013-05-06 17:19:01

标签: jquery jquery-validate

我有一个出生日期字段呈现为附加到日期选择器的文本框。这是html输出:

<input class="text-box single-line hasDatepicker valid" data-val="true" data-val-date="The field Birth Date must be a date." data-val-required="The Birth Date field is required." id="DateOfBirth" name="DateOfBirth" type="datetime" value="">

不应该允许将来约会。这是jQUery代码:

$('#DateOfBirth').datepicker({ maxDate: '+0d' });
$.validator.addMethod("noFutureDate", function(value) {
    if (value !== undefined) {
        var dob = Date.parse(value);
        var today = new Date();
        if (dob > today) {
            return false;
        }
        return true;
    }
    return true;
}, "Birth Date cannot be a future date.");
$('#DateOfBirth').rules('add', { noFutureDate: true });

效果很好。但是,它允许部分日期如“05 /”并且它转换为日期988689600000.datepicker是否允许输入部分日期?处理它的最佳方法是什么?我需要添加Regex验证规则吗?

1 个答案:

答案 0 :(得分:0)

我不确定这是否是您想要的,但请参阅此JSBin

您可以清除输入和左侧日期选择器以便为您处理验证。

$('input').keyup -> @value = ''