如何启用/禁用HTML5必需的字段验证?

时间:2017-09-01 04:53:39

标签: jquery asp.net html5 validation cross-browser

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

我正在使用HTML5必需属性。

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

4 个答案:

答案 0 :(得分:1)

删除

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

添加

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

答案 1 :(得分:0)

试试这个:

<强>的jQuery

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

答案 2 :(得分:0)

这可能对您有所帮助

&#13;
&#13;
$('button').click(function(){
  $('input').each(function(){
    $(this).prop('required', !$(this).attr('required'))
  });
});
&#13;
<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>
&#13;
&#13;
&#13;

就像toggling required attribute一样。

答案 3 :(得分:0)

检查值并删除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>