好吧我有多个选择框,其中包含" active_category" 我想删除上一次输入的类exept。
我明白了:
<input type="text" class="active_category"/>
<input type="text" class="active_category"/>
<input type="text" class="active_category"/>
<input type="text" class="active_category"/>
我想把它改成这个:
<input type="text" class=""/>
<input type="text" class=""/>
<input type="text" class=""/>
<input type="text" class="active_category"/>
我目前的Jquery代码是:
var count = 1;
var total = $(".active_category").length;
$(".active_category").each(function () {
if(count < total)
{
$(this).removeClass( "active_category" );
}
count++;
});
是否有更短的方法?
答案 0 :(得分:4)
无需each
。只需使用:not
和:last
选择器:
$(".active_category:not(:last)").removeClass( "active_category" )
答案 1 :(得分:0)
只是为我的答案添加上下文:
var count = 1;
var total = $(".active_category").length;
$(".active_category").each(function () {
if(count < total)
{
然后我的回答:
$(this).not(':last-child').removeClass( "active_category" );
然后你的if语句的其余部分:
}
count++;
});
证明它适用于独立版本 - http://jsfiddle.net/Lmt5ovd2/
注意选民 - 让我们在按下那个小按钮之前想一想吗?