【问题标题】:Adding validation for date forms为日期表单添加验证
【发布时间】:2017-06-28 10:23:37
【问题描述】:

我对 javascript 还很陌生,所以只是在向表单添加验证方面寻求一些帮助(仅限 JS/jquery):

假设我有getByID("text")的表单

我想添加验证以阻止用户输入小数位(仅限整数),没有字母或特殊字符(仅限数字),值不得超过 23 小时/59 分钟(HH:MM 的两个单独字段(所以一个不得超过 23 小时,另外一个不得超过 59 分钟 - 见下文))。

getByID("HH")

  • 不得超过数字 23,因此允许使用 0-23,无特殊字符/小数/字母

getByID("MM")

  • 不得超过 59 位,因此允许使用 0-59,无特殊字符/小数/字母

如果有人能提供帮助,将不胜感激。提前致谢!

【问题讨论】:

  • 到目前为止你尝试了什么?
  • 我从来不需要在数字上添加表单验证,所以我完全迷路了,哈哈
  • 使用 bootstrap datetimepicker 插件代替这样做

标签: javascript jquery validation


【解决方案1】:
<input type="" name="" id="hh" onkeyup="isNumber(event)" placeholder="HH">
<input type="" name="" id="mm" onkeyup="isNumber(event)" placeholder="MM">


<script type="text/javascript">
    function isNumber(evt) {
    var id = evt.target.id;
    var val = $("#"+id).val();
    if (val)
    {
        var numericReg = /^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$/;
        if(!numericReg.test(val)) {
            $("#"+id).val('');
            alert('Numeric characters only');
        }
        else
        {
            if (id == 'hh')
            {
                if (val > 24)
                {
                    $("#"+id).val('');
                    alert('Less than 24');
                }
            }
            if (id == 'mm')
            {
                if (val > 60)
                {
                    $("#"+id).val('');
                    alert('Less than 60');
                }
            }
        }
    }    
}
</script>

【讨论】:

    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 2017-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-07
    相关资源
    最近更新 更多