2014-04-28 2 views
0

: 예를 들어parseInt가 jQuery 선택기의 작동 방식을 변경합니까? 우리는 동적 요소의 ID를 변경하려면 다음을 사용하는

$('.next').attr('id','next'+parseInt(Number(id_next)-1)); 

#next1#next0된다.

if($('#next0').length>0){ 
    $('.previous').css({'visibility' : 'visible'}); 
    $('.next').css({'visibility' : 'hidden'}); 
} 

parseInt 여기에 문제를 일으키는 :

는 ID를 변경 한 후, jQuery를 더 이상 ID #next0를 찾을 수 없습니다?

미리 도움을 청하십시오!

+1

하지만이 스 니펫을 어디에서 호출할까요? if ($ ('# next0'). length> 0)'??? 문제를 복제하는 최소한의 샘플을 제공해야합니다. BTW, ID는 고유해야하며, 클래스 'next'를 가진 둘 이상의 요소가있는 경우 코드가 실패합니다. –

+1

어떻게'id_next'를 얻지 못하면 우리는 대답 할 수 없습니다. 'attr ("id")'를 사용해서는 안됩니다 - 단지'$ (". next") [0] .id'를 사용하십시오. 또한,'parseInt()'는 jQuery가 아닙니다. – Archer

답변

2

아니요 parseInt가 여기에서 문제를 일으키지 않습니다.

여기에 코드가 작동하는지 보여주기 위해 바이올린의 : http://jsfiddle.net/sZXJ8/

HTML :

<div class="next" id="next1"></div> 

JS :

var id_next = 1; 
$('.next').attr('id','next'+parseInt(Number(id_next)-1), 10); // Always include a radix when using parseInt 
alert($('#next0').length); 

귀하의 문제는 다른 곳에있다.