2011-07-05 7 views
2

previous 페이지 <span id="previous"><a href="www.site.com/page/1" >Previous</a>next 페이지에 대한 링크가 포함 된 페이지 매김 div가 있습니다. 첫 번째 페이지에는 이전 페이지로 연결되는 링크가 없습니다.jQuery를 사용하여 링크 존재 여부 확인

이제 앞뒤 화살표가있는 이미지 버튼이 2 개 있습니다. 사용자가이 버튼을 클릭하면 jQuery는 위에서 언급 한 것처럼 페이지 매김 div에서 링크를 가져와 사용자를이 링크로 리디렉션합니다. 그러나 페이지 매김 링크가 첫 페이지와 같이 존재하지 않으면 previous button을 클릭해도 아무런 변화가 없습니다.

내 코드 :

//img has id = info_rightclick_left 

$("#info_rightclick_left").click(function() { 
        if($("#pagination_previous")) { 
         window.location = $("#pagination_previous a").attr("href"); 
        } else { 
         alert("NOO"); 
        } 
       }); 

문제는 이제 이미지가 여전히 사용자를 리디렉션 클릭 #pagination_previous의 존재 여부처럼 보인다는 것이다. 이 경우 1 페이지에서 사용자는 undefined

으로 리디렉션됩니다. 어떻게 해결할 수 있습니까?

답변

4

시도해보십시오.

$("#info_rightclick_left").click(function() { 
        if($("#pagination_previous").length) { 
         window.location = $("#pagination_previous a").attr("href"); 
        } else { 
         alert("NOO"); 
        } 
       }); 
+0

위대한 작품입니다! – thedethe

1
if($("#pagination_previous").length > 0) { 

jQuery를은 그것이 빈리스트를 반환합니다 아무것도 발견하지 않는 경우, 촬영 된 요소의 목록을 반환하지만, 여전히 목록

2

질문 자체가 답! 다음과 같이 정의되지 않았는지 확인하십시오.

$("#info_rightclick_left").click(function() { 
    if($("#pagination_previous a").attr("href") !== "undefined") { 
     window.location = $("#pagination_previous a").attr("href"); 
    } 
}); 
관련 문제