Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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
Javascript 对于验证,是否可以在按键事件上使用模式属性_Javascript_Jquery_Html - Fatal编程技术网

Javascript 对于验证,是否可以在按键事件上使用模式属性

Javascript 对于验证,是否可以在按键事件上使用模式属性,javascript,jquery,html,Javascript,Jquery,Html,这是我的密码: 在没有任何脚本的情况下,表单提交时会显示验证错误消息 <form> <input type="text" name="text1" placeholder="min-8, max-16, a-z, A-Z" pattern="^[a-zA-Z]{8,16}$" required> <input type="submit"> </form> 提前感谢您可以在每个keyup事件上测试输入值(在将字符添加到输入后激发,keypr

这是我的密码:

在没有任何脚本的情况下,表单提交时会显示验证错误消息

<form>
  <input type="text" name="text1" placeholder="min-8, max-16, a-z, A-Z" pattern="^[a-zA-Z]{8,16}$" required>
  <input type="submit">
</form>

提前感谢

您可以在每个
keyup
事件上测试输入值(在将字符添加到输入后激发,
keypress
在之前激发…)

或者正如注释中指出的,您可以使用在更改输入值时触发的更合适的
input
事件

$('document').ready(函数(){
$('.numberValid')。在('input',function()上{
re=新的RegExp(这个.pattern);
str=$(this.val();
$('label')。切换(!re.test(str));
});
});

请输入4位数字


on('input')
可能是事件的更好选择。@DanielAbraham我被编辑以隐藏dom加载时的错误消息。此处使用的是模式属性,如前所述,不应使用
keypress
事件来验证实际输入值,而应使用
keyup
input
。如果答案不符合您的需要,请改进您的问题。
<form> 
  <input type="text" name="text2" class="numberValid" placeholder="min-4, max-4, 0-9" pattern="^[0-9]{4}$" required>
  <input type="submit">
</form>
$('.numberValid').on('keypress', function () {
    this.setCustomValidity('');
 });