如何enable/disableHTML5必填字段校验?

How to enable/disable HTML5 required field validation?

我有一个表单,需要对 3 个字段进行条件验证。 这些字段是电子邮件、名字和姓氏。 所以电子邮件字段文本框有价值,我不需要验证名字和姓氏,我的意思是后面 2 可以为空。 如果 FirstName & LastName 字段有值,Email 可以为空。

我正在使用 HTML5 必需属性。

如何使用 jQuery 启用禁用 HTML5 所需的验证器?

试试这个:

jQuery

 $('#Email').removeAttr('required');​​​​​

删除

$("#txt").removeAttr("required");

添加

$("#txt").attr("required","");

这可能对你有帮助

$('button').click(function(){
  $('input').each(function(){
    $(this).prop('required', !$(this).attr('required'))
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" nam="FirstName" placeholder="First Name" required/>
<input type="text" nam="LastName" placeholder="Last Name" required/>
<input type="text" nam="Email" placeholder="Email" required/>

<br/>
<button>
Enable/Disable All inputs
</button>

这就像 toggling required attribute

检查值并删除 required 属性。

$('#btnSubmit').on('click', function() {
  if ($('input[name=last]').val() != "" && $('input[name=first]').val() != "")
    $('input[name=Email]').removeAttr("required");
  else if ($('input[name=Email]').val() != "") $('input[name=first],input[name=last]').removeAttr("required");

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form method="post">
  First:
  <input type="text" name="first" value="" required />
  <br />Last:
  <input type="text" name="last" value="" required />
  <br />Email:
  <input type="text" name="Email" value="" required />
  <br />
  <input type="submit" value="Submit" id="btnSubmit" />
</form>