Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 日期输入自动格式化和防止字母字符_Jquery_Html - Fatal编程技术网

Jquery 日期输入自动格式化和防止字母字符

Jquery 日期输入自动格式化和防止字母字符,jquery,html,Jquery,Html,我需要一个包含两个不同部分的html表单。第一种是用户在输入中输入出生日期,输入时会自动添加斜杠,防止他们同时输入字母字符。我已经能够计算出自动格式化的要求。为了解决第二部分的问题,我一直在研究正则表达式,但可以找到任何不同时破坏自动格式的东西。这是我的html: <label for="date_of_birth">Date of Birth </label> <input type="text" name="dob" placeholder="MM/DD/YY

我需要一个包含两个不同部分的html表单。第一种是用户在输入中输入出生日期,输入时会自动添加斜杠,防止他们同时输入字母字符。我已经能够计算出自动格式化的要求。为了解决第二部分的问题,我一直在研究正则表达式,但可以找到任何不同时破坏自动格式的东西。这是我的html:

<label for="date_of_birth">Date of Birth </label>
<input type="text"  name="dob" placeholder="MM/DD/YYYY" id="dob" pattern="^\\s*($1)\\W*($2)?\\W*($3)?([0-9]*).*" maxlength="10" class="validate"/>
这是一把小提琴:

首先,您可以使用jquery掩蔽函数来完成

您需要从html输入中删除模式,而该函数不是必需的。 相反,你可以使用


<label for="date_of_birth">Date of Birth </label>
<input type="text"  name="dob" placeholder="MM/DD/YYYY" id="dob"  maxlength="10" class="validate"/>
将此添加到脚本中

OnKeypress本身会自动显示斜杠,并且字母表的输入受到限制


这是我的JSFIDLE:

首先,可以使用jquery掩蔽函数来完成

您需要从html输入中删除模式,而该函数不是必需的。 相反,你可以使用


<label for="date_of_birth">Date of Birth </label>
<input type="text"  name="dob" placeholder="MM/DD/YYYY" id="dob"  maxlength="10" class="validate"/>
将此添加到脚本中

OnKeypress本身会自动显示斜杠,并且字母表的输入受到限制


这是我的JSFIDLE:

可能的重复的可能的重复的这真的很有帮助。我想如果一个人不满18岁,我可以设置更多的参数来抛出错误?这真的很有帮助。我想我可以设置更多的参数来抛出一个错误,如果一个人在18岁以下?


  $('.validate').mask("99/99/9999");
     $('.validate').change(function(){

    if($(this).val().substring(0,2) > 12 || $(this).val().substring(0,2) == "00") {
     alert("Iregular Month Format");
     return false;
    }
     if($(this).val().substring(3,5) > 31 || $(this).val().substring(0,2) == "00") {
     alert("Iregular Date Format");
     return false;
    }
      });