2017-05-30 25 views
1

我一直在处理有关表单中有多个表单组的要求,当任何一个表单组有效时,应该删除组需要的属性。为什么,因为在这种形式下,任何一个人都足够了。如果表单组中的任何一个有效,则删除所有属性

<form id="inviteTeamForm"> 
    <div class="form-group"> 
<div> 
<input type="text" placeholder="First Name" name="firstName" id="firstName" class="form-control"/> 
<span class="CstErrInvite">Field is required</span> 
</div> 
<div> 
<input type="text" placeholder="Last Name" name="lastName" id="lastName" class="form-control" value="" /> 
<span class="CstErrInvite">Field is required</span> 
</div> 
<div> 
<input type='email' name="email" id="email" placeholder="Company email" class="form-control email" size="10" /> 
<span class="CstErrMsg">Field is required</span> 
</div> 
</div> 
<div class="form-group"> 
<div> 
<input type="text" placeholder="First Name" name="firstName" id="firstName" class="form-control"/> 
<span class="CstErrInvite">Field is required</span> 
</div> 
<div> 
<input type="text" placeholder="Last Name" name="lastName" id="lastName" class="form-control" value="" /> 
<span class="CstErrInvite">Field is required</span> 
</div> 
<div> 
<input type='email' name="email" id="email" placeholder="Company email" class="form-control email" size="10" /> 
<span class="CstErrMsg">Field is required</span> 
</div> 
</div> 
<div class="form-group"> 
<div> 
<input type="text" placeholder="First Name" name="firstName" id="firstName" class="form-control"/> 
<span class="CstErrInvite">Field is required</span> 
</div> 
<div> 
<input type="text" placeholder="Last Name" name="lastName" id="lastName" class="form-control" value="" /> 
<span class="CstErrInvite">Field is required</span> 
</div> 
<div> 
<input type='email' name="email" id="email" placeholder="Company email" class="form-control email" size="10" /> 
<span class="CstErrMsg">Field is required</span> 
</div> 
</div> 
<div class="form-group"> 
<div> 
<input type="text" placeholder="First Name" name="firstName" id="firstName" class="form-control"/> 
<span class="CstErrInvite">Field is required</span> 
</div> 
<div> 
<input type="text" placeholder="Last Name" name="lastName" id="lastName" class="form-control" value="" /> 
<span class="CstErrInvite">Field is required</span> 
</div> 
<div> 
<input type='email' name="email" id="email" placeholder="Company email" class="form-control email" size="10" /> 
<span class="CstErrMsg">Field is required</span> 
</div> 
</div> 
    <button type="submit" class="btn" id="inviteUser">Invite </button> 
</form> 
    <script> 
     $("#inviteTeamForm").submit(function(){ 
     var formElements = $("form-group").closet(); 
     if(formElements.valid()){ 
      formElements.next.find.required = false; 
     } 
     }) 
    </script> 

Thanks in advance. 
+0

最初我想加载 '必要' 的属性的所有的输入。 – Ramu

+0

你在js'$(“form-group”)中有一个错字。closet();',我敢肯定它是**'.closest()'**,用两个'''字母 –

回答

0

$("#inviteUser").click(function() { 
 
    var sumVal = ""; 
 
    $("#inviteTeamForm").find(".form-group").each(function() { 
 
    var $this = this; 
 

 
    $($this).find("input").each(function() { 
 
     sumVal += $(this).val(); 
 
     if ($(this).val()) { 
 
     $($this).addClass("req-validate"); 
 
     return false; 
 
     } else { 
 
     $($this).removeClass("req-validate"); 
 
     } 
 
    }); 
 

 
    $(".form-group.req-validate") 
 
     .find("input") 
 
     .attr("required", true); 
 

 
    $(".form-group") 
 
     .not(".req-validate") 
 
     .find("input") 
 
     .removeAttr("required"); 
 
    }); 
 

 
    if (!sumVal) { 
 
    console.log(sumVal) 
 
    $(".form-group") 
 
     .find("input") 
 
     .attr("required", true); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form id="inviteTeamForm"> 
 
    <div class="form-group" id="group1"> 
 
    <div class="required"> 
 
     <input type="text" x-moz-errormessage="Enter firstName" placeholder="First Name" name="firstName" id="firstName" class="form-control" required/> 
 
    </div> 
 
    <div class="required"> 
 
     <input type="text" x-moz-errormessage="Enter lastName" placeholder="Last Name" name="lastName" id="lastName" class="form-control" value="" required/> 
 
    </div> 
 
    <div class="required"> 
 
     <input type='email' x-moz-errormessage="Enter your company email" name="email" id="email" placeholder="Company email" class="form-control email" size="10" required/> 
 
    </div> 
 
    </div> 
 
    <div class="form-group" id="group2"> 
 
    <div class="required"> 
 
     <input type="text" x-moz-errormessage="Enter firstName" placeholder="First Name" name="firstName" id="firstName" class="form-control" required/> 
 
    </div> 
 
    <div class="required"> 
 
     <input type="text" x-moz-errormessage="Enter lastName" placeholder="Last Name" name="lastName" id="lastName" class="form-control" value="" required/> 
 
    </div> 
 
    <div class="required"> 
 
     <input type='email' x-moz-errormessage="Enter your company email" name="email" id="email" placeholder="Company email" class="form-control email" value="" required/> 
 
    </div> 
 
    </div> 
 
    <div class="form-group" id="group3"> 
 
    <div class="required"> 
 
     <input type="text" x-moz-errormessage="Enter firstName" placeholder="First Name" name="firstName" id="firstName" class="form-control" required/> 
 
    </div> 
 
    <div class="required"> 
 
     <input type="text" x-moz-errormessage="Enter lastName" placeholder="Last Name" name="lastName" id="lastName" class="form-control" value="" required/> 
 
    </div> 
 
    <div class="required"> 
 
     <input type='email' x-moz-errormessage="Enter your company email" name="email" id="email" placeholder="Company email" class="form-control email" size="10" value="" required/> 
 
    </div> 
 
    </div> 
 
    <div class="form-group" id="group4"> 
 
    <div class="required"> 
 
     <input type="text" x-moz-errormessage="Enter firstName" placeholder="First Name" name="firstName" id="firstName" class="form-control" required/> 
 
    </div> 
 
    <div class="required"> 
 
     <input type="text" x-moz-errormessage="Enter lastName" placeholder="Last Name" name="lastName" id="lastName" class="form-control" value="" required/> 
 
    </div> 
 
    <div class="required"> 
 
     <input type='email' x-moz-errormessage="Enter your company email" name="email" id="email" placeholder="Company email" class="form-control email" size="10" value="" required/> 
 
    </div> 
 
    </div> 
 
    <button type="submit" class="btn" id="inviteUser">Invite </button> 
 
</form>

+0

Hi埃尔多安感谢您的答案,但IAM不使用jQuery验证程序IAM只是使用HTML5所需的验证程序,我必须这样做 – Ramu

+0

那么什么是'。()'?我认为这jQuery验证原型? –

+0

是的,这是工作,这是令人不安的我的用户界面,我不想显示此字段是必需的,它应该显示像HTML5所需。为什么因为我已经在我的全球js文件中使用setCustomValidity方法,你能帮我 – Ramu

相关问题