Javascript jQuery addClass在引导表中不工作
我有一个类似这样的引导表:Javascript jQuery addClass在引导表中不工作,javascript,jquery,css,Javascript,Jquery,Css,我有一个类似这样的引导表: <table id="myTable"> <tr> <th data-field="name" data-formatter="nameFormatter"></th> <th data-field="number" data-formatter="numberFormatter"></th> <th class="newClass"&
<table id="myTable">
<tr>
<th data-field="name" data-formatter="nameFormatter"></th>
<th data-field="number" data-formatter="numberFormatter"></th>
<th class="newClass"></th>
</tr>
</table>
我正在尝试对表的行click事件执行
addClass()
,但似乎不起作用。我是否遗漏了什么或做了什么不正确的事情。您的CSS似乎与您的标记不匹配:
tr.shown td.newClass
{
background-image: url("../../Content/Images/close.png");
}
它正在查找表行上显示的类。但看起来您正在将所示的类添加到表格单元格中:
$('#myTable').on('click-row.bs.table', function (e, row, $element) {
//$('.newClass').removeClass('newClass');
$('.newClass').addClass('shown') // isn't $('.newClass') the cell and not the row?
}
更新:
要解决此问题,您可以更改CSS:
td.newClass.shown { ... }
或者您的jQuery:
$element.addClass('shown');
它将帮助您:
$(文档).ready(函数(){
$(“#myTable tr”)。在('click',function()上{
$(this.find(“.newClass”).addClass(“显示”);
});
});代码>
喷溅
这看起来很可疑:“$('#myTable').on('click-row.bs.table')”。这是一个实际事件吗?如果你在事件处理程序中执行console.log或alert,它会触发吗?为什么removeClass
会起作用呢???@dhirajbodichera,添加click
时不会发生任何事情。我想我在这里做了一些非常愚蠢的事情……你的代码起作用了,但它改变了整个专栏的图像,我只想它用于该行。您可以尝试:$element.addClass('show');
。这假定表行作为$element
参数传递。
td.newClass.shown { ... }
$element.addClass('shown');