在gridview 列表中,需要添加如下效果,如果經過時變色,移開時還原成以前的顏色,行選中時通過加深色,從而知道選中了哪行,特別是列表數據比較多的時候,標志很重要,同時觸發選中行事件,那麼如何 行選中加顏色,同時也出發我們事件了?如果我們通入 e.Row.Attributes.Add("onclick", 綁定兩次,發現只能觸發其中的一個,其實可以把另個放到一個裡面
下面是具體的例子:
復制代碼 代碼如下:
protected void EditGridview_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType== DataControlRowType.DataRow)
{
//當鼠標放上去的時候 先保存當前行的背景顏色 並給附一顏色
e.Row.Attributes.Add("onmouseover", "currentcolor=this.style.backgroundColor;this.style.backgroundColor='inactivecaptiontext',this.style.fontWeight='';this.style.cursor='hand';");
//當鼠標離開的時候 將背景顏色還原的以前的顏色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=currentcolor,this.style.fontWeight='';");
//當鼠標單擊時,加深色標志
e.Row.Attributes.Add("onclick", "setvalue();if(window.oldtr!=null){window.oldtr.runtimeStyle.cssText='';}this.runtimeStyle.cssText='background-color:#e6c5fc';window.oldtr=this");
}
}
js代碼:
復制代碼 代碼如下:
<script type="text/javascript" >
function setvalue() {
alert('行單擊事件,同時變色');
}
</script>