c# 代码
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
RadioButton rb = (RadioButton)e.Row.FindControl(\"rbtSelect\");
if (rb != null)
rb.Attributes.Add(\"onclick\", \"onClientClick(\'\" + rb.ClientID + \"\',\'\" + e.Row.RowIndex + \"\')\"); //把选中行的RowIndex也传过去,提交后在服务器端取值时用
}
}
javascript代码
<script type=\"text/javascript\">
function onClientClick(selectedId, rowIndex)
{
//用隐藏控件记录下选中的行号
var hidden = document.getElementById(\"Hidden1\").value=rowIndex;
var inputs = document.getElementById(\"<%=GridView1.ClientID%>\").getElementsByTagName(\"input\");
for(var i=0; i <inputs.length; i++)
{
if(inputs[i].type==\"radio\")
{
if(inputs[i].id==selectedId)
inputs[i].checked = true;
else
inputs[i].checked = false;
}
}
}
</script>
hmtl代码:
<asp:GridView ID=\"GridView1\" runat=\"server\" AutoGenerateColumns=\"False\"
Width=\"648px\" Font-Size=\"9pt\" onrowcommand=\"GridView1_RowCommand\"
DataKeyNames=\"id\" onrowdatabound=\"GridView1_RowDataBound\">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:RadioButton ID=\"rbtSelect\" runat=\"server\" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText=\"文件名\">
<ItemTemplate>
<asp:LinkButton runat=\"server\" ID=\"lbtDirName\" CommandName=\"Change\" CommandArgument=\'<%#Container.DataItemIndex %>\'>
<%#Eval(\"AA\") %>
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField=\"BB\" HeaderText=\"字段1\" />
<asp:BoundField DataField=\"CC\" HeaderText=\"字段2\" />
<asp:BoundField DataField=\"DD\" HeaderText=\"字段3\" />
<asp:BoundField DataField=\"EE\" HeaderText=\"字段4\" />
</Columns>
</asp:GridView>
<input id=\"Hidden1\" type=\"hidden\" runat=\"server\"/>
本文地址:https://www.stayed.cn/item/17316
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我