在javascript中在单个数字日期之前添加零

时间:2012-06-19 15:54:27

标签: javascript jquery

我正在使用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

2 个答案:

答案 0 :(得分: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('/'));
});​

Working example here

答案 1 :(得分:4)

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

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

注意:&#39; d&#39;不会保留前导零,但是&#39; dd&#39;将。同样地,对于&#39; m&#39;和&#39; mm&#39; mm。