2

我正在使用 javascript 验证日期字段,我需要验证 DD/MM/YY

如果用户输入日期为 10/06/2012,它将有效

如果用户输入日期为 3/06/2012 意味着我们需要在日期之前添加一个零作为 03/06/2012。

我的 JavaScript 代码是

$('#date').blur(function () {
            var collector = $('#date').val();
            collector = collector.split("/");
            if (collector[0].length != 2) {
                if (collector[0].length == 1) {
                    //here code for make it as two digit
                }
            }
            else
            {
             alert('Date is not entered properly');
            }
});

我的 html

Date: <input type="text" id="date" name="date" />

如何用javascript做到这一点

4

2 回答 2

6

试试这个 :

collector[0] = "0" + collector[0];

使用您的代码:

$('#date').blur(function() {
    var collector = $('#date').val();
    collector = collector.split("/");
    if (collector[0].length != 2) {
        if (collector[0].length == 1) {
            collector[0] = "0" + collector[0];
        }
    }
    else {
        alert('Date is not entered properly');
    }
    // set the val again
    $('#date').val(collector.join('/'));
});​

这里的工作示例

于 2012-06-19T15:58:34.007 回答
4

将字符串解析为真实日期然后使用Javascript 日期格式可能更容易,这已经提供了一种在日期和月份保留前导零的方法:

var date = Date.parse($('#date').val());
var strDate = date.format('dd/mm/yyyy');

注意:'d' 不会保留前导零,但 'dd' 会。对于“m”和“mm”也是如此。

于 2012-06-19T15:59:26.317 回答