如何在用户在文本框中键入时启用其他控件,如果删除或文本框为空则禁用?

时间:2018-05-08 05:37:51

标签: javascript jquery disabled-control

我试图根据文本框禁用一组控件。如果用户在该文本框中输入了值,则应启用控件,如果用户删除了值,或者如果它仍为空,则应禁用控件。

2 个答案:

答案 0 :(得分:2)

假设您的文本框ID为 TxtBoxName 并假设您将控件放在div或任何其他容器中,其名称为控件,以下是我的解决方案

$('#TxtBoxName').on('change',function(){
    if($(this).val().length == 0)
    {
        $('#controls').attr('disabled','disabled');
    }
    else 
    {
        $('#controls').removeAttr('disabled');
    }
})

答案 1 :(得分:0)

您想禁用哪种控制?如果要禁用表单控件,可以使用以下代码:



$( '#txtName' ).on( 'input change paste', function() {
  var diasabled = !$.trim( $( this ).val() );

  $( 'input' ).not( this ).each( function() {
    $( this ).prop( 'disabled', diasabled )
  } )
} );

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form name="frm" action="#" method="POST">
  <div>
    <label for="txtName">First Name:</label>
    <input type="text" id="txtName" required>
  </div>
  <div>
    <label for="txtFamily">Last Name:</label>
    <input type="text" id="txtTel" disabled>
  </div>
  <div>
    <label for="txtEmail">Email Address:</label>
    <input type="email" id="txtEmail" disabled>
  </div>
  <input type="submit" value="Submit" disabled>
</form>
&#13;
&#13;
&#13;