Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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 如果一个页面中有两个不同的表单Id,如何处理html5验证?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如果一个页面中有两个不同的表单Id,如何处理html5验证?

Javascript 如果一个页面中有两个不同的表单Id,如何处理html5验证?,javascript,jquery,html,Javascript,Jquery,Html,我有两种不同的表单,id分别为newForm和oldForm。但当我点击提交按钮时,html5验证只显示在“newForm”的输入字段上。html5验证不会出现在oldForm中,因为我在oldForm的输入文件中保留了必填字段。单击Submit按钮时,如何验证这两种不同的表单?我需要两种形式的html5版本,但验证以第二种形式出现,而不是第一种形式 $(文档).ready(函数(){ $(#saveBtn”)。在(“单击”,函数()上{ 控制台日志(“提交的表格”); /*$.ajax({

我有两种不同的表单,id分别为
newForm
oldForm
。但当我点击提交按钮时,html5验证只显示在“newForm”的输入字段上。html5验证不会出现在
oldForm
中,因为我在oldForm的输入文件中保留了必填字段。单击
Submit
按钮时,如何验证这两种不同的表单?我需要两种形式的html5版本,但验证以第二种形式出现,而不是第一种形式

$(文档).ready(函数(){
$(#saveBtn”)。在(“单击”,函数()上{
控制台日志(“提交的表格”);
/*$.ajax({
//要提交的ajax代码
}); */
});
});

预评估
s/lgwf{/0f ug{kg]{sf/0f
选择这里
呼吁
其他
k'g/fj]bgsf]lg0f{o cg';f/ePsf]eP k'g/fj]bg g+
cGo
(B.S.)
(A.D.)
(B.S)
(A.D)
理由
数量
处罚
全部的
行动
海关
0
+
-
增值税
0
+
-
消费税
0
+
-
总数:0
提交

不要使用HTML5验证,而是使用Ajax创建自己的验证方法,以防止客户端用户操纵

在发布前使用JavaScript验证表单,如下所示:

<!--Html Form-->
<form name="contact-form" action="" method="post" onsubmit="return checkFields()">
           <label for="nameinput">Name</label>
           <input type="text" name="name">
          <label for="emailinput">Email address</label>
          <input type="email" name="email">
          <label for="textarea-input">Message</label>
          <textarea rows="5" name="message"></textarea>
        <button type="submit" name="contactSubmitBtn">Submit</button>
</form>


function checkFields() {

var x = document.forms["example-form"]["name"].value;
var y = document.forms["example-form"]["email"].value;
var z = document.forms["example-form"]["message"].value;
if (x == "") {
    Response Here
    return false;
}

if (y == "") {
    Response Here
    return false;
}

if (z == "") {
  Response Here!
  return false;
}

名称
电子邮件地址
消息
提交
函数checkFields(){
var x=document.forms[“示例表单”][“名称”].value;
var y=document.forms[“示例表单”][“电子邮件”].value;
var z=document.forms[“示例表单”][“消息”].value;
如果(x==“”){
回应这里
返回false;
}
如果(y==“”){
回应这里
返回false;
}
如果(z==“”){
回答这里!
返回false;
}

}

既然您使用的是HTML5验证,请使用HTML5 DOM方法:

$(文档).ready(函数(){
//将e(事件)参数添加到事件处理程序。。。
$(#saveBtn”)。在(“单击”上,函数(e){
//并对其调用preventDefault()以防止表单提交。
e、 预防默认值();
让allValid=true;
$(“表格”)。每个函数(索引、表格){
allValid=allValid&&form.reportValidity();
});
如果(全部有效){
/*$.ajax({
//要提交的ajax代码
}); */
}
});
});
表单{边框:1px纯蓝色;}
输入:无效{边框:1px实心红色;}

预评估
s/lgwf{/0f ug{kg]{sf/0f
选择这里
呼吁
其他
k'g/fj]bgsf]lg0f{o cg';f/ePsf]eP k'g/fj]bg g+
cGo
(B.S.)
(A.D.)