我可以使用:lt选择器与动态变量?

时间:2014-03-11 05:03:19

标签: jquery asp.net-mvc jquery-selectors

在我的MVC项目中,我想使用AJAX刷新我的页面。所有东西都很好用,但我想在显示新条目时添加一些效果。首先,我使用这样的前置:

$(".mCSB_container").prepend(data.htmlContent);

然后我这样做:

$(".entry:lt(4)").hide().fadeIn(3000);

它正常工作。但是,我想用动态变量来做。我从我的Controller Action返回新的条目计数并设置如下:

 var count = data.count;

当我想使用它时:

 $(".entry:lt(count)").hide().fadeIn(3000);

Visual Studio向我显示错误消息:Expected <integer>。我在定义计数时尝试了这个:

 var count = new Number(data.count);

但这没有任何区别。基本上我想选择给定类的第一个N项,然后使用fadeIn隐藏和显示它们。如果元素计数是动态的,我该怎么做?可以使用:lt选择器还是可以使用其他方式?

3 个答案:

答案 0 :(得分:2)

字符串连接是您正在寻找的

$(".entry:lt(" + count + ")").hide().fadeIn(3000);

但更快的替代方法是使用.slice()

$(".entry").slice(0, count).hide().fadeIn(3000);

答案 1 :(得分:1)

将变量与选择器连接起来的方式是错误的。

尝试,

$(".entry:lt(" + count + ")").hide().fadeIn(3000);

答案 2 :(得分:1)

您可以使用+

将选择器与变量连接起来
$(".entry:lt(" + count + ")").hide().fadeIn(3000);