如何在单击时更改表格行的颜色,并在单击另一行时更改回原来的颜色
How to change a table row color when clicked and back to what it was originally when another row clicked?
正如标题所解释的,我希望在单击一行时更改该行的颜色,然后在单击另一行时恢复该颜色,但仍然更改新单击的行的颜色。
JQuery中的解决方案将不胜感激。我就是打不破这个。到目前为止我所拥有的,但对我不起作用。
function loadjob(jobIDincoming, currentID){
$("#joblistingDetail").load('jobview.php' , {jobID: jobIDincoming}).hide().fadeIn('100');
var last = new Array();
last.push(currentID);
$(last[last.length-1]).closest('tr').css('background-color', 'white');
$(currentID).closest('tr').css('background-color', 'red');};
无需将事情复杂化。这是尽可能简单的。
$("table tr").click(function() {
$("table tr").css("background", "#fff"); //reset to original color
$(this).css("background", "#fo0"); //apply the new color
});
您尚未显示marup,因此
$(document).delegate("tr","click",function(e){
$("tr").css('background-color', 'white');
$(this).css('background-color', 'red');
});
DEMO
我会使用
$(document).on('click', 'tr', function(e){
// reset rows
$('tr').css('background-color', 'white');
// set colour of row raising the click event
$(this).css('background-color', 'red');
});
我也会用$.on作为它的酷。。。读一读为什么会这样!
你可以使用一个类,比如:
.selected td { background-color: #CCC; }
然后在使用.delegate()
单击时应用它,如下所示:
$("#tab1").delegate("tr", "click", function() {
$(this).addClass("selected").siblings().removeClass("selected");
});
http://jsfiddle.net/nick_craver/Ymd65/
相关文章:
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 使用Angular单击时更改特定图示符图标的颜色
- 单击时将文本的颜色更改为随机颜色(按钮)
- 如何在鼠标单击时更改KML多边形的颜色
- 单击ng更改列表项的活动bg颜色
- 将上次单击的按钮和访问过的按钮(未访问过的)的颜色分开
- 如何在单击按钮时更改整行的颜色
- 使用 jQuery 单击链接时更改链接背景颜色
- 通过右键单击更改完整日历中事件的背景颜色 - 不起作用
- 尝试在单击时使用Jquery更改html的背景颜色
- Adobe Acrobat X疑难解答下拉列表颜色选择.需要单击选择
- 单击按钮更改颜色/清除画布时画布出现问题
- 单击时更改点颜色
- 每次单击按钮时随机选择颜色
- 单击时更改元素的颜色
- 当再次单击时,我希望颜色消失.(喜欢/讨厌按钮,一切都可以,但如果我点击两次喜欢按钮,我希望颜色消失)
- Jquery单击颜色
- 单击时更改行颜色-ASP.NET和JavaScript
- 在Rails中,如何通过单击其中一个页面上的按钮来更改三个独立页面上边框的颜色
- 在 Java 脚本中更改颜色单击列表器