gridview中实现radiobutton的单选示例
gridview中实现radiobutton的单选示例
发布时间:2016-12-29 来源:查字典编辑
摘要:c#代码复制代码代码如下:protectedvoidGridView1_RowDataBound(objectsender,GridView...

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"/>

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类