我有一个中继器,当我选择或单击它的任何行时,我只想要那个,然后将其突出显示。我尝试了一些javascript代码,使选中的行突出显示,但在选择其他任何行时也不会突出显示。我的代码是:-
<tr id="gh" style="cursor: pointer" onclick="Select(this);">
任何javascript和样式的代码是:-
<style type="text/css">
.highlight
{
background-color: Red;
}
.selected
{
background-color: #ffdc87;
}
</style>
<script type="text/javascript">
function Select(obj) {
obj.className = 'selected';
var tbl = document.getElementById("Repaddressorbbl")
var firstRow = tbl.getElementsByTagName("TR")[0];
var tableRowId = tbl.rows[firstRow.getElementById("gh").parentNode.id];
alert(tableRowId);
var oldRow = tbl.rows[firstRow.getElementsByTagName("tr")[0].value];
if (oldRow != null) {
oldRow.className = '';
}
firstRow.getElementsByTagName("tr")[0].value = obj.rowIndex;
}
</script>
我们可以用后面的代码简单地做到这一点,但问题是只能用jquery或javascript完成。
最佳答案
您可以使用类似于以下代码:
var INDEX = $(this).parent().children().index($(this));
$('#Repaddressorbbl tr:nth-child(' + INDEX + ')').addClass("highlight")
.siblings()
.removeClass("highlight"); // remove css class from other rows
它获取TR的行号并添加CSS类,同时从所有其他TR中删除同一类。
关于javascript - 如何突出显示转发器中的所选行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8092871/