.net dataGridView当鼠标经过时当前行背景色变色;然后【给GridView增加单击行事件,并获取单击行的数据填充到页面中的控件中】...
1.首先在前臺dataGridview屬性中增加onRowDataBound屬性事件
2.然后在后臺Observing_RowDataBound事件中增加代碼
protected void Observing_RowDataBound(object sender, GridViewRowEventArgs e)
{
//首先判斷是否是數據行
if (e.Row.RowType == DataControlRowType.DataRow)
{
//當鼠標停留時更改背景色
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#eed6d6'");
//當鼠標移開時還原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
}
}
此隨筆參考原文?http://www.cnblogs.com/Ryan_j/archive/2010/10/04/1842038.html GridView72般絕技
3.下面是自己增加的內容【給GridView增加單擊行事件,并獲取單擊行的數據填充到頁面中的控件中】
e.Row.Attributes.Add("onclick", "getGridViewValue('" + strName + "','" + strSex + "','" + strAge + "','" + Server.UrlEncode(strDiag).Replace("+", "%20") + "')");
strDiag診斷這個字段有可能會出現有空格的現象,如果有空格,不編碼傳到前臺js會報錯,所以這里要編碼。而vs編碼后空格就會變成+號,所以這里要用Server.UrlEncode編碼后并將+號替換為%20,前臺js中接收并解碼就成功了,單擊GridView填充數據到Textbox控件中。
【最后附上代碼】
【后臺】
1 protected void Observing_RowDataBound(object sender, GridViewRowEventArgs e) 2 { 3 4 //首先判斷是否是數據行 5 if (e.Row.RowType == DataControlRowType.DataRow) 6 { 7 //當鼠標停留時更改背景色 8 e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#eed6d6'"); 9 //當鼠標移開時還原背景色 10 e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c"); 11 int index = e.Row.DataItemIndex; 12 DataTable dt = (DataTable)ObservingGrid.DataSource; 13 string strName = dt.Rows[index][2].ToString(); 14 string strSex = dt.Rows[index][3].ToString(); 15 string strAge = dt.Rows[index][4].ToString(); 16 string strDiag = dt.Rows[index][5].ToString(); 17 //DY.Web.UI.Dialog.LhgDialog.Alert(this, "getGridViewValue('" + strName + "','" + strSex + "','" + strAge + "','" + Uri.EscapeDataString(strDiag) + "')", ""); 18 e.Row.Attributes.Add("onclick", "getGridViewValue('" + strName + "','" + strSex + "','" + strAge + "','" + Server.UrlEncode(strDiag).Replace("+", "%20") + "')"); 19 20 } 21 22 }【js】
1 <script type="text/javascript"> 2 function getGridViewValue(name, sex, age, diag) { 3 document.getElementById("TbName").value = name; 4 document.getElementById("DdlbSex").value = sex; 5 document.getElementById("TbAge").value = age; 6 document.getElementById("TbDiagnosis").value = decodeURI(diag); 7 } 8 </script>?
轉載于:https://www.cnblogs.com/MingAndWoNiu/p/4733790.html
總結
以上是生活随笔為你收集整理的.net dataGridView当鼠标经过时当前行背景色变色;然后【给GridView增加单击行事件,并获取单击行的数据填充到页面中的控件中】...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle用户创建及权限设置
- 下一篇: 【Java设计模式】单例模式