我将此代码用于gridview:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{ if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("style", "font-weight:bold;color:blue");
e.Row.Attributes.Add("style", "cursor:pointer;");
e.Row.Attributes.Add("onclick", "location='WebForm1.aspx?id=" + DataBinder.Eval(e.Row.DataItem, "CustomerID") + "'";);
}}
还使用TemplateField添加一列复选框。 我的问题是,当我点击行goto WebForm1.aspx的任何字段,但我想要点击CheckBox没有转到WebForm1.aspx页面,只检查CheckBox控件。
答案 0 :(得分:0)
从您的代码中取出 onclick 事件。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{ if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("style", "font-weight:bold;color:blue");
e.Row.Attributes.Add("style", "cursor:pointer;");
}}
答案 1 :(得分:0)
我相信您需要修改最后一行以使用FindControl方法查找复选框控件并传入复选框控件的ID,如下所示:
e.Row.FindControl("myCheckBoxName").Attributes.Add("onclick", "location='WebForm1.aspx?id=" + DataBinder.Eval(e.Row.DataItem, "CustomerID") + "'";);