这个小小的HTML5密码字段在没有on无效属性的情况下工作得非常好(模式是:至少6个字符):
<form>
<input type="password" name="user_password_new" pattern=".{6,}" required />
<input type="submit" name="register" value="Register" />
</form>
请看这里的jsFiddle。
但是,当我添加一个oninvalid属性,当用户的输入不符合模式时,该属性会发出一条自定义错误消息,整个字段将永远无效,请参见此处的代码:
<form>
<input type="password" name="user_password_new" pattern=".{6,}" oninvalid="setCustomValidity('Minimum length is 6 characters')" required />
<input type="submit" name="register" value="Register" />
</form>
请看这里的jsFiddle。
你能找出错误吗?
我喜欢这样使用:
<input type="email" name="Email" required oninvalid="setCustomValidity('ErrorMessage')"/>
并拔掉所有有效输入数据的插头
UPD,为了更好地工作,还有一件事:
$("input").attr("onblur", "setCustomValidity('')");
$("input").attr("oninput", "setCustomValidity(' ')");
由于我遇到了同样的问题,下面是我的解决方案——经过测试并使用FF、Chrome、IE 10、Edge(2017年2月)。
<form>
<input pattern="1234" oninput="setCustomValidity(''); checkValidity(); setCustomValidity(validity.valid ? '' :'please enter 1234');">
<input type="email" required>
<input type="submit">
</form>
如果使用setCustomValidity()
设置值,则该字段无效。即设置一个非零长度字符串使浏览器考虑字段无效。为了考虑任何其他验证的影响,您必须清除自定义有效性:
<input type="password" name="user_password_new" pattern=".{6,}" required
oninvalid="setCustomValidity('Minimum length is 6 characters')"
oninput="setCustomValidity('')" />
问题内容: 这个小的HTML5密码字段可以在没有oninvalid属性的情况下完美运行(该模式说:最少6个字符): 在这里查看jsFiddle 。 但是,当我添加一个oninvalid属性,当用户的输入不适合该模式时,该属性会发出自定义错误消息,整个字段永远不会有效,请参见此处的代码: 在这里查看jsFiddle 。 你能发现错误吗? 问题答案: 如果使用设置值,则该字段无效。设置非零长度的字符串
我使用JavaFX Scene Builder1.1创建了一个FXML文件。默认情况下创建AnchorPane。为什么我不能修改resizable属性?
适用套系这个li加了display:flex,列表的符号就没了,怎么能再显示出符号呢
问题内容: 我有一个实体: 当我尝试保留这种类型的第一个实体时,它可以正常工作,但是当我尝试使用与已存储的实体相同的课程保存新的Student时,它将失败。这是错误: 我正在使用带有Hibernate和H2的Spring Data JPA作为数据库。 该应用程序创建了自己的数据库表: 那么,为什么会有独特的约束呢? 更新: 我看到Hibernate添加了约束: 我如何告诉Hibernate不要创建
当我使用jsonschemavalidator测试验证时,模式如下: 和输入如下: 验证失败
我在用BeautifulSoup抓取网页时收到一个