0

私は次のhtmlを持っています:

<input type="text" id="entry1" value="1" />
<input type="text" id="entry2" value="2" />
<input type="text" id="entry3" value="3" />
<input type="text" id="entry4" value="4" />
<input type="text" id="entry5" value="5" />
<input type="text" id="entry6" value="6" />
<input type="text" id="entry7" value="7" />

<input type="button" id="test" value="Test 1" />

..
$('#test').click(function () {
  var entrys = $(':text[id != "entry5"]').nextAll(':text');
});

私が望んでいたのは、entry6、entry7 のみを返すことでした。しかし、私が得ているのは、基本的にすべてのテキスト入力フィールドです。私は何を間違っていますか?それとも私の使い方nextAll()が悪いのでしょうか?例として entry5 を使用していますが、やりたいことは、特定の入力テキスト ID の後にのみフィールドを取得することです。したがって、entry6 に設定すると、entry7 のみが返されます。

4

2 に答える 2

1

id入力フィールドのIDがあるため、セレクターを使用できます。問題は、!=の代わりに使用していたことです=

この場合id、属性として使用しているため、属性セレクターを使用する必要はありません。セレクターが組み込まれていますid

$('#test').click(function () {
    var entrys = $('#entry5').nextAll(':text');
});

デモ:フィドル

于 2013-04-24T16:31:12.977 に答える
0

=代わりに使用するつもりでした!=

var entrys = $('input:text[id="entry5"]').nextAll('input:text');

ただし、この場合、 Arun のソリューションはよりシンプルで適切です。

于 2013-04-24T16:29:31.777 に答える