ASP.NET C#中Radiobutton控件的疑问

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET C#中Radiobutton控件的疑问相关的知识,希望对你有一定的参考价值。

在登录.ascx中自己拉了2个radiobutton控件,分别表示2种权限 但是不知道该如何把数据库中的权限和这2个控件联系起来… 不知道我这样问清楚没…

用RadioButtonList吧
RadioButtonList1.DataSource = 你查询出的权限集合;
RadioButtonList1.DataTextField="权限名称字段名";
RadioButtonList1.DataValueField = "随便";

这样如果两个权限就会显示两个RadioButton,
三个就是三个,试试吧
参考技术A 1 读取, 假如你的数据库中至少有一种权限信息的话,那么利用ado.net组件读取后,然后控制radiobutton的是否选中来表示是否有权限(建议使用checkbox,而不是radiobutton,否则想取消都得多写代码)
2 修改, 假如用户更改了权限,通过对比当前的选中状态仍然利用ado。net组件写回数据库
参考技术B 一楼的不错

向 asp.NET RadioButton 控件添加自定义属性

【中文标题】向 asp.NET RadioButton 控件添加自定义属性【英文标题】:Adding custom attributes to asp.NET RadioButton control 【发布时间】:2011-04-16 05:14:42 【问题描述】:

我想向名为Key 的asp.net RadioButton 添加一个自定义属性,我将其用于客户端的ajax 请求。

我发现我的 aspx 标记如下:

<asp:RadioButton ID="rdoPost" GroupName=PreferredContactMethod" value="Post" onclick="DoStuff(this)" runat="server" />

在页面中呈现为

<span Key="ContactMethod">
   <input id="rdoPost" type="radio" name="PreferredContactMethod"" value="Post" onclick="DoStuff(this);" />
</span>

而我期望(并希望)得到以下结果

<input id="rdoPost" type="radio" Key="ContactMethod" name="PreferredContactMethod"" value="Post" onclick="DoStuff(this);" />

我用 asp TextBox 控件尝试了同样的事情,它的工作原理完全符合我的预期,只需将Key="myKey" 属性添加到&lt;input type="text"/&gt; 元素。

有没有办法使用标准 RadioButton 控件来解决这个问题,还是我必须从标准控件继承才能实现我想要的标记?

另外...(很抱歉同时问两个问题),向 html 标记添加非标准属性是不是一个坏主意?目前我在 JavaScript 中通过以下方式使用这些属性:

var key = rdoPost.Key;

【问题讨论】:

【参考方案1】:

我从下面的问题/答案中发现,最简单的方法是使用 InputAttributes 属性通过代码隐藏,如下所示:

rdoPost.InputAttributes.Add("class", "myCheckBoxClass");

Why does ASP.Net RadioButton and CheckBox render inside a Span?

【讨论】:

是的,这对 RadioButton 有帮助,但对 RadioButtonList 没有帮助。 我已经编写网络表单 10 年了,现在才发现这个属性。哇。 这很有趣。我有一个用于文本输入的用户控件,根本不需要这样做,只需使用 Attribute 而不是 InputAttribute

以上是关于ASP.NET C#中Radiobutton控件的疑问的主要内容,如果未能解决你的问题,请参考以下文章

asp.net(C#)怎样将listview中的radiobutton设置成互斥?

asp.net中radiobutton 的问题 C#

向 asp.NET RadioButton 控件添加自定义属性

asp.net中repeater控件里使用一组radiobutton为啥设置了相同groupname还是一组按钮都能选中

asp.net用button_click事件重置页面 使页面上选择过的checkbox和radiobutton控件清空呢

ASP.NET RadioButton 与名称(组名)混淆