1

私は 4 つのテキスト ボックスを持っています。いくつかのコードを書きました。

$('input[type="text"]').keyup(function () {
    if ($(this).val() == '') {
...

このコードを 1 つの texbox に適用したくありません。どうすればよいですか?

4

2 に答える 2

3

そのテキストボックスに を付けて、次のidようにコードを更新します。

$('input[type="text"]:not("#id_of_txt")').keyup(function () {
    if ($(this).val() == '') {
    }
});

この解決策は、あなたの質問に答えるだけのものであり、良い習慣として提案するものではありません. :notある時点で DOM にさらに入力ボックスを追加する可能性があり、他のすべてが keyup イベントにバインドされるため、リストに追加し続ける必要があります。

より良い解決策は、3 つの入力ボックスに共通のクラスを与え、コードを次のように更新することです。

$('input.class_of_txt').keyup(function () {
于 2012-11-23T12:43:17.587 に答える
1

3 つのテキスト ボックスに共通のクラスを追加します。

<input type="text" class="myclass" />

そして、そのクラスのみを参照します。

$('.myclass').keyup(function () {

他のソリューションでは、コードの保守性が低下します。別の特別なテキストボックスがある場合はどうなりますか? それも例外にしますか?

于 2012-11-23T12:42:14.800 に答える