怎样判断RadioButtonList控件是否有选择
实现这个功能,方法很多的。
你可以使用Javascript来实现,http://www.cnblogs.com/insus/archive/2013/01/14/2859079.html 当然你可以不使用Javascript使用JQuery一样可以完成。
你还可以使用程序后台实现,http://www.cnblogs.com/insus/archive/2012/09/05/2671729.html
你还可以使用asp.net自带的验证控件来判用户是否有对RadioButtonList控件是否有选择:
<asp:RadioButtonList ID="RadioButtonList1" runat="server" RepeatDirection="Horizontal"><asp:ListItem Text="1"></asp:ListItem><asp:ListItem Text="2"></asp:ListItem><asp:ListItem Text="3"></asp:ListItem><asp:ListItem Text="4"></asp:ListItem></asp:RadioButtonList><asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="RadioButtonList1"Display="none" ErrorMessage="必须选择"></asp:RequiredFieldValidator><asp:ValidationSummary ID="ValidationSummary1" runat="server" EnableClientScript="true"ShowMessageBox="true" ShowSummary="false" /><asp:Button ID="Button1" runat="server" Text="Button" />
上面的html运行效果如下:
其实上面所说的,均是一个前提而已。今天Insus.NET想实现的这个问题,
这帖当时已经收藏了,不过手上工作繁忙,没能及时按自己的想法提供答案,虽然给帖了,没有关系,把想法分享于博客上。
没有帖主的环境,可以模拟一个的。
创建一个对象:
using System; using System.Collections.Generic; using System.Linq; using System.Web;/// <summary> /// Summary description for Survey /// </summary> namespace Insus.NET {public class Survey{private string _ID;private string _Title;public string ID{get { return _ID; }set { _ID = value; }}public string Title{get { return _Title; }set { _Title = value; }}public Survey(){//// TODO: Add constructor logic here// }public Survey(string id, string title){this._ID = id;this._Title = title;}} }
Ok, 我们新建一个网页,并在网页中填充一些演示数据入刚才创建好的个对象中:
private List<Survey> SurveyData(){List<Survey> s = new List<Survey>();s.Add(new Survey("1.1", "title 1"));s.Add(new Survey("1.2", "title 1"));s.Add(new Survey("1.3", "title 1"));return s;}
有了数据了,在.aspx设计前端代码,拉一个Repeater控件至网页:
<form id="form1" runat="server"><div><asp:Repeater ID="Repeater1" runat="server"><HeaderTemplate><table border="1" border-collapse="collapse" cellpadding="3" cellspacing="0" width="300"></HeaderTemplate><ItemTemplate><tr><td style="width: 30px;"><%# Eval("ID") %></td><td><%# Eval("Title") %></td><td><asp:RadioButtonList ID="RadioButtonList1" runat="server" RepeatDirection="Horizontal"><asp:ListItem Text="5"></asp:ListItem><asp:ListItem Text="4"></asp:ListItem><asp:ListItem Text="3"></asp:ListItem><asp:ListItem Text="2"></asp:ListItem><asp:ListItem Text="1"></asp:ListItem></asp:RadioButtonList><asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="RadioButtonList1"Display="none" ErrorMessage='<%# Eval ("ID") + " 没有勾选打分。" %>'></asp:RequiredFieldValidator></td></tr></ItemTemplate><FooterTemplate></table></FooterTemplate></asp:Repeater><asp:ValidationSummary ID="ValidationSummary1" runat="server" EnableClientScript="true"ShowMessageBox="true" ShowSummary="false" /><asp:Button ID="Button1" runat="server" Text="投票" /></div></form>
看看高亮的代码:
在.aspx.cs绑定数据给Repeater控件。
演示一下效果,看看是否有达到效果:
算是完成了,效果也达到了,不过Insus.NET就此例子,想玩玩其它。望你也能有所收获。
由于整个RadioButtonList控件在Repeater控件中每一行是独立的。也可以看到Insus.NET在设计对象时,也没有设计留有此列相关的属性,只是用了ID和Title属性。既然这旨独立的,因此,可以把这个块地方抽出来,放置于一个用户控件中去,用户控件(ascx)没错吧?是的,没有错。
好象复杂度比上面完成的例子更大喔。面向对象嘛!把独立的部分分开,总比藕合性强的程序好些。就是说,某一天程序有改变,某些记录的评分是改为其它,而不是所有都是RadioButtonList控件有5个选项,因此,改为使用一个用户控件替代,这样有改变量,只改用户控件可。
好吧,创建一个用户控件在站点上。
把下图comment的部分移至用户控件。
移过去之后,用户控件稍作改动:
现在有两个问题需要想到的,就是网页上的Repeater控件内的记录有些信息需要传至用户控件,另外还要想到,用户控件对用户选择的值传至网页,因为选择的值传至网页之后,用户提交投票时,需要存储起来。
这是页面与用户控件之间的交互。下面是Insus.NET使用Interface(接口)来处理这个交互的问题。
using System; using System.Collections.Generic; using System.Linq; using System.Web;/// <summary> /// Summary description for IInteractive /// </summary> namespace Insus.NET {public interface IInteractive{void SetValue(object obj);object GetValue();} }
接口写好之后,在用户控件.ascx.cs实用这个接口。
现在,我们把用户控件完成了,就可以把它拉至网页去。
好此时网页与用户控件已经碰面了,还差心灵与语言沟能了。怎样让它们之间可以沟通呢? 做法是在Repeater控件上写一个事件。
在.aspx启用了Repeater控件的OnItemDataBound事件,还得去.aspx.cs实现这样事件的程序:
看到否,上图中高亮的代码,就是把Repeater控件内的记录的信息传给用户控件。
效果跟没有使用用户控件时没有两样。
怎样判断RadioButtonList控件是否有选择相关推荐
- RadioButtonList控件
是一组RadioButton控件.当需要在多个项目中做出单一选择时,或需要在程序中改变单选按钮的个数时,使用RadioButtonList控件要比使用多个单个的Radionbutton控件方便很多.如 ...
- WebForm jquery获取radiobuttonlist控件的选中值
问题描述 我希望能获取到radiobuttonlist控件选中的索引值,也就是index值,奈何网上得到的方法都只能获取到Text.在我尝试n多次之后终于找到了answer. 解决方法 首先去控制台看 ...
- WinForm开发中针对TreeView控件改变当前选择节点的字体与颜色
WinForm开发中针对TreeView控件改变当前选择节点的字体与颜色 在B/S开发中,对TreeView控件要改变当前选中节点的颜色比较方便,其有相应的SelectedNodeChanged事件 ...
- JS判断页面控件是否可用
JS判断页面控件是否可用[原创] 2009-12-08 16:27 如果你看到这篇文章,甚至目前正愁于该问题的困扰,希望你把这篇文章看完.至少下次不会在这个问题上浪费时间. 近期做的项目中涉及到页面控 ...
- RadioButtonList控件绑定图片Vertical对齐
数据源来自:http://www.cnblogs.com/insus/archive/2013/02/03/2890852.html 今天再去微软网站下载哪些图片时,发现windows的图标颜色变了. ...
- html如何判断某个控件是否focus
可以使用JavaScript代码在HTML中判断某个控件是否获得了焦点. 可以通过检查该元素的 "document.activeElement" 属性来判断.如果该属性与要检查的元 ...
- RadioButtonList控件添加样式
步骤: 1:在单选按钮组控件中 添加属性 RepeatLayout ,其值选"flow"<asp:RadioButtonList ID="rblcellstat&q ...
- java 的日期选择控件_Java日期选择控件
一起学习 一次项目研发中需要日期时间选择控件, 网上提供的不多, 且质量一般, 所以只好自己做,参考了 网上某位同学的 作品 Jave 日期选择控件 DateChooser . 目前的代码将日期时间选 ...
- 四大列表控件之RadioButtonList控件(单选按钮)
Default.aspx <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="serve ...
最新文章
- CentOS 7如何设置Linux开机自动获取IP地址
- 使用Infinispan进行Camel的事务性缓存
- mail、sendEmail发送邮件命令
- GIT提交记录和Revert commit过程分析
- 优质淘宝产品描述页模板框架PSD分层模板,美工实用素材
- Ckeditor插件
- mysql优化表空间_MySQL 优化笔记
- 新裝win7虚拟机设置记录-20180909
- fastdfs 集群 java,第四套:FastDFS 分布式文件系统集群与应用(视频)
- 类对象实现红蓝方互殴
- android jpeg图片变圆,Android 将一张图片变为圆形图片
- android 网页存储,90%的人不懂将网页永久保存在手机里的方法
- LigerUI视频教程_基于LigerUI前端技术实现的管理平台
- Ubuntu18.04美化桌面(主题、图标)
- 【天梯赛】L2-039 清点代码库** (25 point(s))
- 计算机声音在线模拟,计算机声场模拟软件ODEON及其应用.pdf
- 乳腺肿瘤超声图像感兴趣区域的自动识别综述
- 联系导师邮件 | 清华人大浙大上财 均被回复
- Spring自动注入
- 微型计算机接口与技术期末,微机原理与接口技术期末考试试题与答案