最近在项目中有个单选gridview中某一项的需求,使用radiobutton后发现,虽然最终选择出来的是一项,但是在页面上却可以选择多项,经过查看生成的html代码,发现生成的radio的name属性并不一样,即使已经加了groupname。解决方法代码如下

页面代码:

 <asp:GridView ID="SmartGridView1" runat="server" AutoGenerateColumns="False"
PageSize="" AllowPaging="true" DataSourceID="SmartDataSource1" DataKeyNames="DecisionItemID" onrowdatabound="GridView1_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="选择" ItemStyle-Width="5px" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:RadioButton runat="server" GroupName="SelDecision" ID="cbSel" key='<%#Eval("DecisionItemID") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField DataField="SerialNumber" HeaderText="决策事项编号" ItemStyle-Width="80px"
ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="DecisionMakingMatters" HeaderText="决策事项" ItemStyle-Width="300px"/> </Columns>
</asp:GridView>

js代码

 function onClientClick(selectedId, rowIndex) {
var inputs = document.getElementById("<%=SmartGridView1.ClientID%>").getElementsByTagName("input");
for (var i = ; i < inputs.length; i++) {
if (inputs[i].type == "radio") {
if (inputs[i].id == selectedId)
inputs[i].checked = true;
else
inputs[i].checked = false;
}
}
}

后台代码

 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
RadioButton rb = (RadioButton)e.Row.FindControl("cbSel");
if (rb != null)
rb.Attributes.Add("onclick", "onClientClick('" + rb.ClientID + "','" + e.Row.RowIndex + "')");
}
}

最新文章

  1. TCP/UDP简易通信框架源码,支持轻松管理多个TCP服务端(客户端)、UDP客户端
  2. jQuery的input 失去焦点之后,不能再获取到焦点
  3. oracle 查询周的第一天日期
  4. 个人阅读作业——M1/M2总结
  5. [NYIST16]矩形嵌套(DP,最长上升子序列)
  6. MyBatis之六:缓存
  7. C++Primer笔记二
  8. 排序算法门外汉理解-Shell排序
  9. jsp想js,action传值
  10. 201521123049 《JAVA程序设计》 第1周学习总结
  11. UVa12563- Jin Ge Jin Qu hao
  12. 配置 Tomcat 以服务方式自动运行
  13. Java8 Stream实例--统计出所有含‘张’字的人员的平均年龄
  14. Python 实现简易 Shell
  15. springmvc与fastjson的整合,注解@RequestBody的使用
  16. vuex的学习例子
  17. 怎样导入现有的NiosII工程
  18. localStorage/cookie 用法分析与简单封装
  19. cmake和make区别
  20. Hugepages,hugetlb_shm_group与ORA-27125

热门文章

  1. Linux设备驱动程序 之 模块参数
  2. legend3---11、php前端模块化开发
  3. nodejs服务端实现post请求
  4. Git提交出现 Everything up-to-date
  5. 【OSS】工具类
  6. SpringBoot: 6.文件上传(转)
  7. 3年磨一剑,我的前端数据 mock 库 http-mock-middleware
  8. docker 导出多个镜像合并成一个tar
  9. vue等单页面应用优缺点
  10. cnpm 安装vue与vue/cli