若单击按钮,则为表格行上色

Color table row if button clicked

本文关键字:表格 单击 按钮      更新时间:2023-09-26

当使用javascript单击时,我希望将表中的整行变为红色。

我用下面的代码成功地将单个单元格变成了红色,但不是整个tr。同样,一旦这一行是红色的,我就无法将其变回白色。

var ie = document.all
var ns = document.getElementById && !ie
function rowclick(e) {
var obj = ns ? e.target : event.srcElement
if (obj.tagName=="TD") {
obj.style.background="red"
obj.onblur=function() {
obj.style.background="white"
}
}
} 

请注意,如果(obj.tagName=="TD") {更改为if (obj.tagName=="TR") {,则不起作用

function rowclick(e) {
  var obj = this
  if (obj.tagName == "TR") {
    if (obj.style.backgroundColor === "red")
        obj.style.backgroundColor = "white"
    else
        obj.style.backgroundColor = "red"
  }
}
$('table tr').click(rowclick)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>
  <table>
    <tr><td>hello</td><td>world</td></tr>
    <tr><td>hello</td><td>world</td></tr>
    <tr><td>hello</td><td>world</td></tr>
  </table>
</div>

已更新以切换背景颜色。