2011-01-06 6 views
1

얘들 아이 같은 것을하려고합니다. 그 중 두 href와 텍스트 상자가 있습니다. < -> TEXT < +> - 그래서 +와 - 값을 누르면 txt에서 하나씩 늘리거나 줄여야합니다.Jquery .next() 함수가 작동하지 않습니다.

그리고 jquery를 텍스트 상자의 + 및 - 값으로 사용하고 있습니다. 언제든지 올바르게 + 일어나는 +를 누르면 - 값 대신 텍스트 필드 이름이 필요합니다.

$(".quantity .subtract").click(function() { 
    var qtyInput = $(this).next('input'); 
    var qty = parseInt(qtyInput.val()); 
    if (qty > 1) 
     qtyInput.val(qty - 1); 

    qtyInput.focus(); 
    return false; 
}); 

$(".quantity .add").click(function() { 
    var qtyInput = $(this).prev('input'); 
    var qty = parseInt(qtyInput.val()); 
    if (qty >= 0 && (qty + 1 <= 999)) 
     qtyInput.val(qty + 1); 

    qtyInput.focus(); 
    return false; 
}); 

그리고 자신의 ID는 페이지

+0

문제의 코드 서식을 수정하십시오. 질문을 수정하고 전체 코드 블록을 강조 표시 한 다음 ctrl + shift + k (또는 중괄호 쌍 모양의 툴바 버튼 :'{}')을 누르십시오. –

답변

0

내가했던 한에서 THM을 사용하여 둘 이상의 시간 메신저로 다를 것이다 : 그것은 JQuery와 사용되는 텍스트 상자의 값을 취할 수 있도록 이에 대한 모든 솔루션은 다음과 이게 뭔가 좋았어. 그

var qtyInput = $(this).nextAll('a'); 
var qtytxt = $(qtyInput).prev('input'); 
var qty = qtytxt.val(); 

if (qty > 1) 
    qtytxt.val(qty - 1); 

qtytxt.focus(); 
0

next의 태그에 대한 모든 옆에있어 당신이에 next를 호출하는 요소 다음 요소를 찾습니다. 대신 siblings을 사용하는 경우 :

var qtyInput = $(this).siblings('input'); 
관련 문제