当我点击相应的标签时,我试图从表格中的单个tr标签中删除style属性。一直在尝试一些代码,但找不到解决方案。
这里是小提琴:http://jsfiddle.net/q2nb08t6/12/ jQuery的:
$(".tr_table").click(function(){
$(".tg_table").removeAttr('style');
//$(".tg_table").parent().find("tg_table").removeAttr('style');
//$(".tg_table").parent().removeAttr('style');
//$(".tg_table").each().removeAttr('style');
});
答案 0 :(得分:1)
tr
级别而不是table
级别
$(".tr_table").click(function() {
$(this).toggleClass('tr_table');
});

.tg_table {
width: 100%
}
.tr_table {
cursor: pointer;
}
tr.tr_table {
background-color: rgba(255, 0, 0, 0.5) !important;
color: white !important;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<table class="tg_table" border="1" style="">
<tr class="tr_table">
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr class="tr_table">
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr class="tr_table">
<td>Neil</td>
<td>Mark</td>
<td>30</td>
</tr>
<tr class="tr_table">
<td>Mike</td>
<td>Ford</td>
<td>98</td>
</tr>
</table>
&#13;
<强>更新强>
不幸的是,由于表格是由php脚本生成的,我无法改变方法
在这种情况下,您可以使用css()
更改tr
样式
$(".tr_table").click(function() {
$(this).css('background', 'white');
$(this).css('color', 'black');
});
&#13;
.tg_table {
width: 100%
}
.tr_table {
cursor: pointer;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table class="tg_table" border="1" style="background-color: rgba(255,0,0,0.5) !important;color:white !important;">
<tr class="tr_table">
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr class="tr_table">
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
<tr class="tr_table">
<td>Neil</td>
<td>Mark</td>
<td>30</td>
</tr>
<tr class="tr_table">
<td>Mike</td>
<td>Ford</td>
<td>98</td>
</tr>
</table>
&#13;
答案 1 :(得分:0)
据我所知也称here,除非你覆盖它,否则你不能删除从父继承的样式。这里是最好的解决方案,找到一个默认样式,当点击行时设置这个样式将删除父样式。
这里的代码,$(this)引用被点击的元素。
$(".tr_table").click(function(){
$(this).attr('style','background-color: rgba(255,255,255,0.5) !important;color:white !important;');
});