单击按钮时的颜色表行

时间:2015-04-02 15:34:24

标签: javascript jquery

当我使用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") {不起作用

1 个答案:

答案 0 :(得分:3)

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>

更新为切换背景颜色。