asp.net gridview 如何实现行点击事件
第一步:绑定行点击事件
protected void GV_DATA_RowDataBound( object sender, GridViewRowEventArgs e ) { if( e.Row.RowType == DataControlRowType.DataRow ) { e.Row.Attributes.Add( "onmouseover", "if(this!=prevselitem){this.style.backgroundColor='#Efefef'}" ); e.Row.Attributes.Add( "onmouseout", "if(this!=prevselitem){this.style.backgroundColor=''}" ); e.Row.Attributes.Add( "onclick", e.Row.ClientID.ToString() + ".checked=true;selectx(this)" ); e.Row.Attributes[ "style" ] = "Cursor:hand"; } }
或者
protected void gridCiqGoodsDeclarCheck_RowDataBound(object sender, GridViewRowEventArgs e) { e.Row.Attributes["style"] = "cursor:hand"; PostBackOptions myPostBackOptions = new PostBackOptions(this); myPostBackOptions.AutoPostBack = false; myPostBackOptions.PerformValidation = false; myPostBackOptions.RequiresJavaScriptProtocol = true; //加入javascript:头 String evt = Page.ClientScript.GetPostBackClientHyperlink(sender as GridView, "Select$" + e.Row.RowIndex.ToString()); e.Row.Attributes.Add("onclick", evt); }
第二步 即可写行改变事件
protected void gridCiqGoodsDeclarCheck_SelectedIndexChanged(object sender, EventArgs e) { if (gridCiqGoodsDeclarCheck.SelectedRow == null) return; //获取运单号 string logisticsNo = gridCiqGoodsDeclarCheck.SelectedRow.Cells[0].Text; if (string.IsNullOrEmpty(logisticsNo)) return; }
第三步 <%@ Page Language="C#" 加一段话
EnableEventValidation="false"
就OK了
还可以参考其他的:http://bbs.csdn.net/topics/340090915