如何从jQuery选择中获得前一个或下一个元素?
基本上,我将有一组元素,比如说所有的输入:
$('input')
当我有一个输入时,我还需要得到上一个和下一个输入。类似于:
$(this).prev('input')
$(this).next('input')
但是,我不希望只使用下一个DOM元素。我需要jQuery选择中的下一个元素(在本例中为输入)。
我知道我可以迭代jQuery选择
.each(function(...
但我不需要重温所有的元素,只是前后的一个。
元素还将被动态排序(使用jQueryUI排序表)。
发布于 2018-02-09 10:13:49
你可以这样做:
var inp = $('input');
var index = inp.index(this);
var next = inp[index+1];
var prev = inp[index-1];
请注意prev
和next
,就像这样,现在不是jQuery对象而是DOM对象了。要使它们成为jQuery对象,需要将它们包装在$()
功能。
https://stackoverflow.com/questions/-100007369
复制相似问题