我正在尝试更改表格中所选行的类。每行都有相同的类名。只要用户单击图像,类名就会更改。 (想想gmail的已加星标/未加星标的电子邮件)
我有以下代码
$(document).ready(function() {
$(".notSelected").click(function() {
$(".notSelected").removeClass(".notSelected").addClass(".selected");
});
});
编辑:我想标记/突出显示每个选定的行 jsfiddle
有关如何解决此问题的任何建议? 感谢
答案 0 :(得分:2)
当有人点击.notselected
并将其更改为“已选择”时,这会更改课程。 Remove和AddClass需要没有点。此外,您没有选择类名而不是notSelected。
$(document).ready(function() {
$(".notselected").click(function() {
$(this).removeClass("notselected").addClass("selected");
});
});
请参阅http://jsfiddle.net/J8Ehr/1/
BTW看看toggleClass也许它会帮助你以另一种方式定义它。
另一个评论:你想要改变行类,上面的答案只会改变字段类。如果你想改变行的类,请尝试这样的(未经测试):
$(document).ready(function() {
$(".notselected").click(function() {
$(this).parent('tr').removeClass("notselected").addClass("selected");
});
});
答案 1 :(得分:1)
您的元素具有notselected
个类名,并且您的选择器会尝试查找类为notSelected
的元素,同时您也不应将.
与addClass
和{{1}一起使用方法。
removeClass
答案 2 :(得分:0)
您可能正在寻找:
$(document).ready(function() {
$(".notselected").click(function() {
$(".selected").removeClass("selected").addClass("notselected");
$(this).removeClass("notselected").addClass("selected");
});
});
两个问题。一,您申请的课程为notselected
而不是notSelected
。二,你在removeClass参数中不需要.
。此外,你有MooTools加载在你原来的小提琴,而不是jQuery。
答案 3 :(得分:0)
The name of该类足以添加/删除。删除前缀的点..
还为未选择的类
将 s 设置为小写$(document).ready(function() {
$(".notselected").on('click',function() {
$('.notselected').removeClass("notselected")
$(this).addClass("selected");
});
});