1

テキストボックスが空の場合にボタンを無効にする例をたくさん見てきましたが、特定のテキストボックスに対してのみボタンを無効にする例は見つかりませんでした。私はJqueryを初めて使用し、擬似コード化されていることを知っていますが、アイデアを得ることができます. 常にチェックするには、どの Jquery 関数を呼び出す必要がありますか? また、if 句で or ステートメントを使用して、テキスト ボックス フィールドが空かどうかを判断するにはどうすればよいでしょうか。

if( $('#txtEvent').val.length === 0 || $("#txtID").val.length === 0)
 {
  $('#btnSave').attr("disabled", "disabled");
 }
else 
 {
  $('#btnSave').attr("enabled", "enabled");
 }

フォーム コントロール

 <asp:TextBox ID="txtEvent" runat="server"></asp:TextBox>
< asp:TextBox ID="txtID" runat="server"></asp:TextBox>
<asp:Button ID="btnSave" runat="server"" Text="Save and Next" />
4

3 に答える 3

3

次の 2 つの方法で実行できます。

if (!$("#txtEvent").val()) { //undefined will yield false
//call a method! .val() not .val
    $("#btnSave").attr("disabled", "disabled");
} else {
    $("#btnSave").attr("enabled", "enabled");
}

または:

if ($("#txtEvent").length > 0) {
    $("#btnSave").attr("disabled", "disabled");
} else {
    $("#btnSave").attr("enabled", "enabled");
}

これらを常に実行したい場合は、次のようにラップします。

$("#txtEvent").on("change", function() { //code });
//using the onchange event will trigger the code whenever the txtbox changes.
//you can also use onblur if you want it to trigger AFTER the txtbox loses focus

これらを適切な ASP コードに変換する必要があることに注意してください。これは単に論理的な答えです。

于 2013-08-28T02:19:54.903 に答える
0

これは 2 年前の質問ですが、 を使用した別の方法を示したいと思いbindます。テキストを見る'keyup mouseup cut paste'

これは、キーボード入力だけでなく、テキストをカットまたはペーストする場合にも機能します。また、テキストボックスの小さな十字をクリックしてテキストをクリアすると( を使用mouseup)、これが機能します。

ここに画像の説明を入力

OPは、「特定のテキストボックスのみ」のボタンを無効にすると述べました。次のテキスト ボックスがあるとします。

<input type="text" name="tbox1" id="txtbox1" />
<input type="text" name="tbox2" id="txtbox2" />
<input type="text" name="tbox3" id="txtbox3" />
<input type="text" name="tbox4" id="txtbox4" />
<input type="submit" id="btnSubmit" name="button" value="Save and Next" disabled />

txtBox1 または txtBox3 に入力された値に基づいてボタンを有効/無効にする必要がある場合は、これを使用できます。

<script>
  $(document).ready(function() {

      $("#txtbox1, #txtbox3").bind('keyup mouseup cut paste', function () {
          var txt = $(this);
          setTimeout(function () {
              $('#btnSubmit').prop('disabled', $(txt).val() == ''); 
           }, 100);
      });
  });
</script>

txtBox1 と txtBox3 の両方が空でない場合にのみボタンを有効/無効にする必要がある場合は、これを使用できます

<script>
  $(document).ready(function() {
      $("#txtbox1, #txtbox3").bind('keyup mouseup cut paste', function () {
         setTimeout(function () {
             ($('#txtbox1').val() && $('#txtbox3').val()) ? $('#btnSubmit').prop('disabled', false) : $('#btnSubmit').prop('disabled', true);
         }, 100);
      });
  });
</script>
于 2015-09-25T08:46:44.010 に答える
0

試す

var $empties = $('#txtEvent, #txtID').filter(function(){
    return $.trim($(this).val()).length == 0
})

$('#btnSave').prop("disabled", $empties.length === 0);
于 2013-08-28T02:26:23.733 に答える