使用e.Row.Attributes.Add("onclick", "this.style.backgroundColor='yellow'");
我可以在ASP.NET GridView中使用鼠标点击突出显示一个选项。
但是,这样做的每一行都会更改它的背景颜色,如果我点击另一行,之前点击的行仍然会突出显示。
有没有办法解决这个问题,即重置所有其他行并仅突出显示当前选定的行?
答案 0 :(得分:0)
让我们假设它看起来像
然后
e.Row.Attributes.Add("class", "colorchange");
并且您的javascript代码看起来像
$('.colorchange').click(function()
{
$('.colorchange').backgroundColor="";
$(this).backgroundColor="your color name";
});
答案 1 :(得分:0)
如果将AutoGenerateSelectButton属性设置为true,则可能是。
答案 2 :(得分:0)
添加课程点击并在点击事件中切换它:
没有JQuery :
服务器端:
e.Row.Attributes.Add("onclick", "Click(this)");
客户方:
Click = function(el) {
var clicked = document.querySelectorAll(".clicked");
for (var i = 0, length = clicked.length; i < length; i++) {
removeClass(clicked[i], "clicked");
}
el.className = el.className + "clicked";
}
<强> JQuery的强>:
服务器端:
e.Row.Attributes.Add("class", "clickable");
客户方:
$(".clickable").click(function() {
$(".clicked").removeClass("clicked");
$(this).addClass("clicked");
});