0

特定の条件でテキスト ボックスを有効にする方法を理解するのに苦労しています。したがって、次の例では、「enterName」ボタンがクリックされるまで入力ボックス「name」を無効にします。次に、入力ボックス「名前」に何かが入力されたときに、「useName」ボタンを有効にしたい(または、「名前を入力してください」というアラートボックスをポップアップするだけです)

<button id="enterName"> Enter a Name </button>
Name: <input type="text" id="name" disabled="disabled"/>
<button id="useName" disabled="disabled"> Use this name </button>

今、私はこれを持っています:

$(document).ready(function(){
   $("button:#enterName").click(function(){

       /* ??? */

     });
    });

$(document).ready(function(){
  $("button:#useName").click(function(){

    $("div.nameUsing").append($('input#name').val());
    $('input#name').val("");   //reset input field

 });
});

テキストボックスの「enterName」ボタンを有効にする方法、または「useName」ボタンが押されたときに入力を確認する方法がわかりません。どんな助けでも大歓迎です。

4

3 に答える 3

1

を使ってみてくださいremoveAttr。例えば:

$("#enterName").click(function() {
    $('#name').removeAttr('disabled');
});
于 2012-06-21T15:48:03.643 に答える
1

.prop()jQuery APIを使用して、コントロールを有効または無効にします。

テスト済みで動作中

$(document).ready(function () {
    $("button#enterName").click(function () {
        $('input#name').prop('disabled', false);
    });
    $('input#name').change(function () {
        $("button#useName").prop('disabled', $(this).val().length === 0); //enable if length > 0, disable otherwise
    });
    $("button#useName").click(function () {
        $("div.nameUsing").append($('input#name').val());
        $('input#name').val("");   //reset input field
    });
});​
于 2012-06-21T15:54:18.387 に答える
1

これを試して

$("#enterName").click(function() {
   $('#name').prop('disabled', false);
})

$('#name').keyup(function(){
    $('#useName').prop('disabled', $(this).val().length == 0);
});​

jsFiddle デモ

于 2012-06-21T15:54:22.837 に答える