gpt4 book ai didi

javascript - 设置自定义 HTML5 有效性消息属性忽略模式正则表达式

转载 作者:行者123 更新时间:2023-11-27 23:38:12 24 4
gpt4 key购买 nike

我在 HTML5 输入中使用 pattern 属性。它工作正常,直到我使用 setCustomValidity 添加自定义消息。所有这一切应该做的是

Sets the validationMessage property of an input element.

但是我的模式却被忽略了。如果我注释掉 setCustomValidity,则该模式有效。

HTML

<form>Country code:
<input type="text" name="country_code" pattern="[A-Za-z]{3}" title="Three letter country code">
</form>

JS

$('input').get(0).setCustomValidity("It's wrong");

$('input').on('input', function () {
console.log($(this).prop('validity'));
var valid = $(this).get(0).checkValidity();
console.log(valid); });

http://jsfiddle.net/hrtsz50s/

最佳答案

使用 reportValidity(); 代替 checkValidity();,当你调用该函数时,首先使用空字符串清除有效性!

$('input').get(0).setCustomValidity("It's wrong");

$('input').on('input', function () {
this.setCustomValidity('');//Add this!!
console.log($(this).prop('validity'));
var valid = $(this).get(0).reportValidity();//here
console.log(valid); });

编辑

让它在这个 fiddle 中工作:http://jsfiddle.net/hrtsz50s/1/

关于javascript - 设置自定义 HTML5 有效性消息属性忽略模式正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32829776/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com