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

Mat*_*ser 11 asp.net radio-button

我想为asp.net RadioButton添加一个自定义属性Key,我正在使用客户端来获取ajax请求.

我发现的是我的aspx标记如下:

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

在页面中呈现为

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

而我期望(并希望)得到以下内容

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

我已经尝试使用asp TextBox控件做同样的事情,它的工作原理与我希望简单地将Key="myKey"属性添加到<input type="text"/>元素一样.

有没有办法用标准的RadioButton控件,或者我必须继承标准的一个来实现我想要的标记?

另外......(抱歉同时提出两个问题),是否将非标准属性添加到html标记中还是一个坏主意?目前我正在以下列方式在JavaScript中使用这些属性:

var key = rdoPost.Key;
Run Code Online (Sandbox Code Playgroud)

Mat*_*ser 18

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

rdoPost.InputAttributes.Add("class", "myCheckBoxClass");
Run Code Online (Sandbox Code Playgroud)

为什么ASP.Net RadioButton和CheckBox在Span内部呈现?