获取多个RadioButton的值,我们一般会使用服务器控件RadioButtonList:

<asp:RadioButtonList ID="rbl" runat="server">
<asp:ListItem Value="1">单选1</asp:ListItem>
<asp:ListItem Value="2">单选2</asp:ListItem>
<asp:ListItem Value="3">单选3</asp:ListItem>
</asp:RadioButtonList>

后台通过 this.rbl.SelectedValue 来获取选则的值,关于RadioButtonList的使用,这里就不介绍了。

由于RadioButtonList的排列是有规则的,不管是横排还是竖排,紧凑还是对齐。

那么,如果是一组没有规则的RadioButton,那么这些值怎么获取呢?

<asp:RadioButton ID="rb1" runat="server" GroupName="new" Text="单选1" />
<div>……</div>
<asp:RadioButton ID="rb2" runat="server" GroupName="new" Text="单选2" />
<div>……</div>
<asp:RadioButton ID="rb3" runat="server" GroupName="new" Text="单选3" />
<div>……</div>

办法当然有很多,比如最常用的:当选中值的时候,用JS将值放入页面的隐藏控件中,再在后台获取隐藏控件的值。

这里介绍另外一种方法,比如页面禁用JS的时候,这种方法就有效了:

首先,在涵盖所有需要取值的RadioButton外面,加一个div,并且runat="server"

<div id="div1" runat="server">
<asp:RadioButton ID="rb1" runat="server" GroupName="new" Text="单选1" />
<div>……</div>
<asp:RadioButton ID="rb2" runat="server" GroupName="new" Text="单选2" />
<div>……</div>
<asp:RadioButton ID="rb3" runat="server" GroupName="new" Text="单选3" />
</div>
<div>……</div>

然后,后台写一个这样的方法:

public string GetRadioButtonGroupValue(Control ctrl, string controlName)
{
   foreach (Control control in ctrl.Controls)
   {
      if (control is RadioButton)
      {
         RadioButton lControl = control as RadioButton;
         if (lControl.Checked && lControl.GroupName == controlName)
         {
            return lControl.Text;
         }
      }
   }
return null;
}

最后,调用就可以了:

GetRadioButtonGroupValue(this.div1, "new")

后台获取不规则排列RadioButton组的值的更多相关文章

  1. asp.net后台获取html控件的值

    1.asp.net后台获取前台type=text控件的值 前台:<input name="txtName" class="username" type=& ...

  2. 在后台获取Textarea控件的值

    使用Request.Form方法 1.在前台设置name 属性 <textarea name="Content">hdjfhjdfhdj</textarea> ...

  3. 使用jQuery获取radio/checkbox组的值的代码收集

    <!-- $("document").ready(function(){ $("#btn1").click(function(){ $("[na ...

  4. 后台获取ajax发送过来的值

    user.CityId = int.Parse(HttpContext.Request[ "bindArea"]); 以上为获取方法:

  5. 后台获取html控件的值

    string name = Request.Form["Name1"].ToString(); “xxx” 里的是name值 Request["xx"]取到相同 ...

  6. 【ADO.NET基础】后台获取前台控件

    C# 后台获取前台 input 文本框值.string aa=Request.Form[headself]; 那么要是后台给前台input文本框赋值呢? 后台 public string Headse ...

  7. javaWeb - 2 — ajax、json — 最后附:后台获取前端中的input type = "file"中的信息 — 更新完毕

    1.ajax是什么? 面向百度百科一下就知道了,这里就简单提炼一下 Ajax即Asynchronous Javascript And XML(异步JavaScript和XML).当然其实我们学的应该叫 ...

  8. .net后台获取HTML中select元素选中的值

    前台: <select id="Province" name="Province" class="select"></se ...

  9. Hbuilder app开发,使用mui.ajax和服务器交互,后台获取不到值,显示null的解决方法

    先上一个能用的js代码: function login() { var uname=document.getElementById("username").value.trim() ...

随机推荐

  1. 20160808_Linux服务

    1. http://bbs.csdn.net/topics/370100269 2. http://blog.csdn.net/csfreebird/article/details/8239933 h ...

  2. css-高度自适应的问题(body高度问题)

    css-高度自适应的问题 对象height:100%并不能直接产生效果,是因为跟其父对象有关. #center{ height:100%; } 上面的css样式是无效的,不会产生任何效果. 需要改写: ...

  3. icp算法基本思想

    Icp基本思想参考资料:http://www.cnblogs.com/jian-li/articles/4945676.html ,包括点-点,点-面的各种icp变种 Icp算法就是两个点云X.Y之间 ...

  4. SCCM部署win7操作系统,系统盘为D盘

    SCCM部署win7操作系统,系统盘为D盘 1. 系统部署完毕之后是这样的 2.解决方案 解决分发干净Windows7操作系统盘符为”D”的方法也比较简单. 在SCCM管理控制台中,打开”软件库””操 ...

  5. Sqoop安装配置及数据导入导出

    前置条件 已经成功安装配置Hadoop和Mysql数据库服务器,如果将数据导入或从Hbase导出,还应该已经成功安装配置Hbase. 下载sqoop和Mysql的JDBC驱动 sqoop-1.2.0- ...

  6. java 集合(set)

    Interface ListIterator<E> 特有的方法: hasPrevious() 判断是否存在上一个元素. previous() 当前指针先向上移动一个单位,然后再取出当前指针 ...

  7. 关于ASP.NET与CLR相互关系的一些总结

    原文地址:http://www.cnblogs.com/jasenkin/archive/2010/10/20/asp-net-clr-relation.html CLR(COM服务器) CLR作为一 ...

  8. [你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理

    原文地址:http://kb.cnblogs.com/page/42318/ 系列文章导航: [你必须知道的.NET] 开篇有益 [你必须知道的.NET] 第一回:恩怨情仇:is和as [你必须知道的 ...

  9. nyoj-----284坦克大战(带权值的图搜索)

    坦克大战 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 Many of us had played the game "Battle city" ...

  10. WEB前端性能优化:HTML,CSS,JS和服务器端优化

    对前端开发工程师来说,前端性能优化的重要性是不言而喻的,最为大家所知的是YSLOW的23条优化规则,在我的理解中,性能优化不纯粹是指用户访问网站的速度,也包括开发的效率,这里我总结下我理解中的WEB前 ...