我正在使用 HTML5 验证表单并使用 setCustomValidity 更改错误消息文本。除了某种原因,我就是无法让它工作。我在控制台或任何东西中没有收到任何错误消息。我正在尝试获取“data-error”属性中的内容并将其用作自定义错误消息,但无法弄清楚我已经花了几个小时在这上面。
查询
$aboutUs.find("#headerForm :input").each(function(){
var $this = $(this);
var errorMessage = $this.attr("data-error");
for (var i = 0; i < $this.length; i++) {
$this[i].oninvalid = function(e) {
e.target.setCustomValidity("test");
if (!e.target.validity.valid) {
e.target.setCustomValidity(e.target.getAttribute(errorMessage));
}
};
}
});
HTML 表格
<input id="firstName" type="text" required data-error="First Name Message" />
<input id="lastName" type="text" required data-error="Last Name Message" />
<input id="phone" type="text" required data-error="Phone Message" />