Jquery 为什么验证弹出窗口在HTML5验证中不起作用
在我的任务中,我需要进行HTML5验证。实际上我的表单中没有我的提交选项。所以我只是添加了“disply:none”。我正在从外部点击选项触发提交选项,因为HTML5验证在点击“提交”时起作用。还有一件事是我应该添加自定义验证消息。消息正确发送,但在添加自定义消息后动态输入文本时,其工作异常Jquery 为什么验证弹出窗口在HTML5验证中不起作用,jquery,html,Jquery,Html,在我的任务中,我需要进行HTML5验证。实际上我的表单中没有我的提交选项。所以我只是添加了“disply:none”。我正在从外部点击选项触发提交选项,因为HTML5验证在点击“提交”时起作用。还有一件事是我应该添加自定义验证消息。消息正确发送,但在添加自定义消息后动态输入文本时,其工作异常 <form id="myform" method="post" action="#" onSubmit="javascript:return false;" > <input type=
<form id="myform" method="post" action="#" onSubmit="javascript:return false;" >
<input type="text" id="myID" required>
<input type="text" id="secId" required>
<input type="submit" id='formSubmit' style="display:none">
您意识到,each中的返回false并没有取消单击,对吗?是的。如果我提交,它会返回错误,但即使我在字段中输入正确的值,它也会继续填充,直到我单击其他位置。我更新了代码。请检查它
function checkValidation(element){
var flag = true;
element.setCustomValidity("");
if (!element.validity.valid && element.validity.valueMissing) {
element.setCustomValidity("This field cannot be left blank");
flag = false;
} else if(element.validity.patternMismatch){
element.setCustomValidity("PLease enter correct format");
flag = false;
} else {
element.setCustomValidity("");
}
if(!flag){
$('#formSubmit').click();
//if(!$("#myform")[0].checkValidity()) return false;
} else {
return true;
}
}
$('#butId').click(function(){
var $inputs = $('#myform :input');
var formData ={};
$inputs.each(function(e) {
formData[this.name] = $(this).val();
var flag = checkValidation(this);
if(!flag){
return false;
}
});
});