Javascript 高亮显示表中的选定行
我有一个html格式的表格Javascript 高亮显示表中的选定行,javascript,jquery,Javascript,Jquery,我有一个html格式的表格 <table> <tr> <td> <button onclick="someFunction()"> </td> <td>data</td> </tr> <tr> <td> <button onclick="someFunction()"> </td>
<table>
<tr>
<td>
<button onclick="someFunction()">
</td>
<td>data</td>
</tr>
<tr>
<td>
<button onclick="someFunction()">
</td>
<td>data</td>
</tr>
<tr>
<td>
<button onclick="someFunction()">
</td>
<td>data</td>
</tr>
</table>
数据
数据
数据
每一行都有一个动态id,下面是我的问题我想突出显示按下按钮的表格的当前行
如何实现它?在jquery中使用最近()
选择父级
HTML
如果要使用“最佳实践”,请删除所有内联处理程序。试试这个:
$("button.someClass").click(function () {
$("tr.highLightClass").removeClass("highLightClass"); // remove class if it is having someone
$(this).closest("tr").addClass("highLightClass"); // here selected row
});
在jquery中使用closest()
选择父级
HTML
如果要使用“最佳实践”,请删除所有内联处理程序。试试这个:
$("button.someClass").click(function () {
$("tr.highLightClass").removeClass("highLightClass"); // remove class if it is having someone
$(this).closest("tr").addClass("highLightClass"); // here selected row
});
一个好的方法是像这样更改标记
<table id="mytable">
<tr>
<td><button>click</button></td>
<td>data</td>
</tr>
<tr>
<td><button>click</button></td>
<td>data</td>
</tr>
<tr>
<td><button>click</button></td>
<td>data</td>
</tr>
</table>
然后
演示:一个很好的方法是像
<table id="mytable">
<tr>
<td><button>click</button></td>
<td>data</td>
</tr>
<tr>
<td><button>click</button></td>
<td>data</td>
</tr>
<tr>
<td><button>click</button></td>
<td>data</td>
</tr>
</table>
然后
演示:Onclick已经过时,是一种非常糟糕的做法。。将类/id添加到选择器
<table>
<tr><td><button class="clickMe"></td><td>data</td></tr>
</table>
为什么要在上使用
如果您的表是动态生成的,或者行是动态添加的,那么您也应该关注新的动态元素。Onclick已经过时,是一种非常糟糕的做法。。将类/id添加到选择器
<table>
<tr><td><button class="clickMe"></td><td>data</td></tr>
</table>
为什么要在上使用
如果您的表是动态生成的,或者行是动态添加的,那么您也应该关注新的动态元素。从您的问题中,我了解到以下几点:当您单击表中的按钮时,您希望突出显示相应的
下面是一个JSFIDLE演示我的答案:
基本上,使用事件对象检索目标节点(按钮),然后是该节点的父节点(代码),然后是该节点的父节点(代码)。然后使用任何你想改变样式的方法
代码:
按钮功能调用:
希望这对您有所帮助。从您的问题中,我了解到以下几点:当您单击菜单中的按钮时,您希望突出显示相应的
下面是一个JSFIDLE演示我的答案:
基本上,使用事件对象检索目标节点(按钮),然后是该节点的父节点(代码),然后是该节点的父节点(代码)。然后使用任何你想改变样式的方法
代码:
按钮功能调用:
希望这有帮助。除了上面的代码外,还可以通过css@RahulPatil对不起,我误解了发送信息给你,无论如何,谢谢你comment@Downvoters除了上面的代码之外,还可以通过添加的类来评论你的否决票吗css@RahulPatil对不起,我误解了给你发消息,无论如何,谢谢你的帮助comment@Downvoters请注意对您的否决票发表评论。此代码是一种更好地响应OP的方法。此代码是一种更好地响应OP的方法。您的真实代码是否正在关闭
?您的真实代码是否正在关闭
?
<table>
<tr><td><button class="clickMe"></td><td>data</td></tr>
</table>
$('body').on("click", ".clickMe", function(){
var that = this;
that.closest("tr").addClass("highlightMe");
});
function someFunction(e) {
e.target.parentNode.parentNode.style.backgroundColor = "blue";
}