我有很多表,例如:
<table class="onion" id="12">
当点击名为“Mark_Pre_Val”的div时,我想要id为4,6,12和12的表格。 21 把他们的班级改为“洋葱点击”,如果其中一个已经是“洋葱点击”,那就不要了 改变班级。
以下是点击事件:
$(".Mark_Pre_Val").click(function(){ });
有人能指出我正确的方向如何处理这个问题吗?
答案 0 :(得分:17)
$(".Mark_Pre_Val").click(function(){
$('#4, #6, #12, #21').removeClass('onion').addClass('onionClick');
});
编辑:正如其他人所指出的那样,元素ID不应只包含数字。如果您在循环中输出这些表并使用ID作为迭代器,您可能会发现使用index()更优雅。
答案 1 :(得分:3)
请不要把以数字开头的ID。
$(".Mark_Pre_Val").click(function(){
$("#4, #6, #12, #21").removeClass("onion").addClass("onionClick");
});
答案 2 :(得分:3)
$("#Mark_Pre_Val").click(function(){
$("#4,#6,#12,#21")
.not("onionClick")
.removeClass("onion")
.addClass("onionClick");
});
修改强>
上述答案都不会起作用,因为如果您选择类.Mark_Pre_Val,则不会触发click事件。你说你的div被命名为Mark_Pre_Val,所以你需要在选择时使用#。另外......为什么不使用not()立即过滤那些没有你要改变的类的,然后删除旧类,最后添加新类?
答案 3 :(得分:-1)
$('#4,#6,#12,#21')。toggleClass('onionClick');