当我点击该行的编辑按钮时,我正在使用以下脚本突出显示行。当我点击按钮时,我正在传递Id的行!我的问题是代码在Mozila Firefox中运行但在Google Chrome上运行。以下代码有什么问题。
function high(id)
{
$('tr').removeAttr('style');
document.getElementById(id).style="background-color:#eeeeea;color:#000000;font-weight:500;";
}
答案 0 :(得分:3)
这是一个将特殊类添加到编辑行并删除其他行上的类的演示。这是使用jquery的nearest()方法完成的。你甚至不需要使用任何id。
$("button").on("click",function(){
$("tr").each(function(){
$(this).removeClass("marked");
});
$(this).closest("tr").addClass("marked");
});
.marked{
background-color:#eeeeea;color:#000000;font-weight:500;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
<tr>
<td>This is TD</td>
<td><button>Edit</button></td>
</tr>
<tr>
<td>This is TD</td>
<td><button>Edit</button></td>
</tr>
<tr>
<td>This is TD</td>
<td><button>Edit</button></td>
</tr>
</table>
答案 1 :(得分:2)
您需要单独设置样式对象的属性。
var elem = document.getElementById(id);
//Set properties
elem.style.color = "#000000";
elem.style.fontWeight = "500";
elem.style.backgroundColor = "#eeeeea";
由于您使用的是jquery,因此您可以使用.css()
$('#' + id).css({
"background-color" :"#eeeeea",
"color":"#000000",
"font-weight":"500";
});
但是,我建议你创建一个CSS类然后使用它。
$('tr').removeClass('highlight');
$('#' + id).addClass('highlight');
答案 2 :(得分:2)
试试这个,
$('#'+id).attr("style","background-color:#eeeeea;color:#000000;font-weight:500;");
Chrome上的Working也是。
原因,可以是样式是一个具有一些属性的对象 和铬可能不允许覆盖它。所以自定义字符串你 传递方式不适用于它,因此没有应用于 元件。