文本框的日期验证?

时间:2014-01-05 14:35:16

标签: javascript jquery asp.net

function IsValidDateTime(Day, Mn, Yr) {
    var DateVal = Day + "/" + Mn + "/" + Yr;
    var dt = new Date(DateVal);

    if (dt.getDate() != Day) {
        alert('Invalid Date');
        return (false);
    }
    else if (dt.getMonth() != Mn) {
        //this is for the purpose JavaScript starts the month from 0
        alert('Invalid Date');
        return (false);
    }
    else if (dt.getFullYear() != Yr) {
        alert('Invalid Date');
        return (false);
    }


    return (true);
}

这里工作正常...我的意思是它不能从键盘输入字体的类型,但如果我删除数字..然后它显示一个exption意味着日期格式不正确..所以...我想从日历中输入日期..

3 个答案:

答案 0 :(得分:1)

您可以为文本框设置只读属性:

<input type="text" name="date" id="date" readonly>

例如,如果通过'calender'表示日期选择器,请参阅:http://jsfiddle.net/J4SER/

答案 1 :(得分:0)

HTML5日期类型可以帮助您

<input type="date">

答案 2 :(得分:0)

您可以使用以下命令阻止退格和删除以处理文本框:

$(document).ready(function () {
    $("#date").datepicker();
    $("#date").on('keydown', function() {
    var key = event.keyCode || event.charCode;

    if( key == 8 || key == 46 )
        return false;
  });
});

Here is demo