if()的jQuery问题

时间:2011-08-15 19:28:50

标签: jquery

我正在尝试过滤两个链接(包含'next'和'previous'),然后如果找到其中一个链接,我会附加一个链接来加载照片。我的问题是我想在时间只附加一个链接,如果它找到下一个文本和上一个,则加载下一个链接。链接,如果它找到上一个文本。如果我写这个就行不通了

$(document).ready(function(){

if  ($(".forumrow table").find('a').filter(':contains(Next)')) {
$('.blockhead a').filter('a:last[href^="http://site.com/showgallery.php?cat="]').html('<a class="loadnextone" href="#">Load next</a>');
$('a.loadnextone').live("click",function(event) {
event.preventDefault();
var next1 = $(".forumrow table").find('a').filter(':contains(Next)').attr('href');
var next1cat1split =  $('.blockhead a').filter('a:last[href^="http://site.com/showgallery.php?cat="]').attr('href').split(/=/)[1];
$(".nextoz").load(next1+" ol.floatcontainer");
});
}

if ($(".forumrow table").find('a').filter(':contains(Prev)')) {
$('.blockhead a').filter('a:last[href^="http://site.com/showgallery.php?cat="]').html('<a class="loadprevone" href="#">Load prev</a>');
$('a.loadprevone').live("click",function(event) {
event.preventDefault();
var prev1 = $(".forumrow table").find('a').filter(':contains(prev)').attr('href');
var prev1cat1split =  $('.blockhead a').filter('a:last[href^="http://site.com/showgallery.php?cat="]').attr('href').split(/=/)[1];
$(".prevozz").load(prev1+" ol.floatcontainer");
});
}

});

我该怎么办?

1 个答案:

答案 0 :(得分:3)

您应该检查length这样的属性。 jQuery始终返回jQuery对象,即使选择器不返回任何内容。

if  ($(".forumrow table").find('a').filter(':contains(Next)').length > 0){

} 

if ($(".forumrow table").find('a').filter(':contains(Prev)').length > 0) {

}