-1

を使用してボタン値の名前を動的に変更しようとしていましたthis。これが私のコードです。

HTML

<input class='submit' id='id1' type='button' value='Submit' />

JS コード

$(document).ready(function () {
    $('.submit').click(function () {
        $(this).val("hello");
    });
});

私が使用する場合:

$("#id1").val("hello")

期待通りの結果をもたらしています。

私はjsfiddleに同じコードを入れました

http://jsfiddle.net/pf92v/

そしてそれはそこでうまくいきます。では、その背後にある理由は何でしょうか? jQuery v1.4を使用しています

4

2 に答える 2

3

交換

$('.submit')

$('#id1')

問題は、clickハンドラーで、thisクリックされた要素を参照することです。クラスの要素でクリックイベントを定義しましたsubmit(それが$('.submit')意味します)。クラスの要素submitが見つからなかったため、ハンドラは起動されませんでした。

于 2013-04-15T18:24:29.357 に答える
1

ボタンには「送信」クラスが必要です

編集:質問のコードを変更し、クラスを送信するように設定しました。その場合、コードは問題なく動作するはずです。そうでない場合は、他に何か問題がある可能性がありますが、さらにコードを示す必要があります。

于 2013-04-15T18:24:26.710 に答える