2009-06-11 3 views
16

jQuery 선택에서 이전 요소 또는 다음 요소를 가져 오는 방법은 무엇입니까?jQuery를 사용하여 선택 항목에서 다음 또는 이전 요소 가져 오기

기본적으로,이 요소의 집합이있을 것이다, 모든 입력을 말한다 : 나는 하나의 입력이있을 때

$('input') 

, 나는 또한 이전 및 다음 입력을 얻을 필요가있다. 같은 뭔가 :

$(this).prev('input') 
$(this).next('input') 

그러나, 입력은 형제 아니고 그냥 다음 DOM 요소를 원하지 않는다. jQuery 선택 (이 경우 입력)에서 다음 요소를 원한다.


은 내가

.each(function(... 

와 jQuery를 선택을 반복 할 수 알고하지만 이전과 이후의 모든 요소가 단지 하나를 통해 갈 필요가 없습니다.

요소도 동적으로 정렬됩니다 (jQuery UI 정렬 기능 사용).

+0

그래서 다음, 어린이와 이전의 부모는? – TStamper

+0

그들은 정렬 할 수있는 다른 div 컨테이너에 있습니다. – chrismar035

답변

18

은 당신이 뭔가를 할 수 있습니다 :

var inp = $('input'); 

var index = inp.index(this); 
var next = inp[index+1]; 
var prev = inp[index-1]; 

prevnext 즉,이하지 jQuery를 객체하지만 DOM은 이제 객체처럼. jQuery 객체를 만들려면 $() 함수로 묶어야합니다.

+0

완벽하게 일했습니다! 고맙습니다! – chrismar035

8

당신이 요구하는대로 jQuery를이 지원이 포함되어 있습니다,

$($('input')[0]).next('input') 

next

$($('input')[0]).prev('input') 

previous

관련 문제