2017-09-01 21 views
0

私は3フィールドの条件付き検証が必要なフォームを持っています。 これらのフィールドは、Email、FirstName、およびLastNameです。 電子メールフィールドのテキストボックスに値があり、姓を確認する必要はありません&姓、後で2は空にすることができます。 FirstName & LastNameフィールドに値がある場合、Emailは空白にすることができます。HTML5必須のフィールド検証を有効/無効にするにはどうすればよいですか?

私はHTML5必須属性を使用しています。

jQueryを使用してHTML5のバリデーションを無効にするにはどうすればよいですか?

答えて

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>

0

これを試してみてください:

jQueryの

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

を削除するにはこれが役立つかもしれない

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

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

を追加しますよU

$('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>

それはtogglingrequired attributeようなものです。

関連する問題