我有一个分页div,其中包含指向previous
页面<span id="previous"><a href="www.site.com/page/1" >Previous</a>
和next
页面的链接。在第一页上,没有任何指向上一页的链接。
现在我有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
我该如何解决这个问题?
答案 0 :(得分:4)
试试这个。
$("#info_rightclick_left").click(function() {
if($("#pagination_previous").length) {
window.location = $("#pagination_previous a").attr("href");
} else {
alert("NOO");
}
});
答案 1 :(得分:2)
你问题本身的答案!只需检查未定义如下:
$("#info_rightclick_left").click(function() {
if($("#pagination_previous a").attr("href") !== "undefined") {
window.location = $("#pagination_previous a").attr("href");
}
});
答案 2 :(得分:1)
if($("#pagination_previous").length > 0) {
jQuery返回捕获元素的列表,如果找不到任何它将返回一个空列表,但仍然是一个列表