jQuery nextAll阅读所有输入字段

vcudknz3  于 2023-06-22  发布在  jQuery
关注(0)|答案(2)|浏览(117)

我有以下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。

js5cn81o

js5cn81o1#

您可以使用id选择器,因为您有输入字段的ID。你的问题是你使用了!=而不是=
在这种情况下,您不必使用属性选择器,因为您使用id作为属性,您有一个内置的id选择器。

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

演示:Fiddle

zyfwsgd6

zyfwsgd62#

你应该使用=而不是!=

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

但是,在这种情况下,Arun's solution更简单,也更合适。

相关问题