2010-09-23 57 views
9

Tôi muốn thêm thuộc tính tùy chỉnh vào một RadioButton asp.net có tên Key mà tôi đang sử dụng phía máy khách để yêu cầu ajax.Thêm thuộc tính tùy chỉnh vào asp.NET RadioButton control

Những gì tôi đang tìm kiếm là đánh dấu aspx của tôi mà được như sau:

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

được kết xuất trong trang như

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

trong khi tôi mong đợi (và hy vọng) để có được sau đây

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

Tôi đã thử điều tương tự với điều khiển hộp văn bản asp và nó hoạt động chính xác như tôi muốn expe ct chỉ cần thêm thuộc tính Key="myKey" vào phần tử <input type="text"/>.

Có cách nào xung quanh điều này với điều khiển RadioButton tiêu chuẩn hay tôi sẽ phải kế thừa từ tiêu chuẩn để đạt được đánh dấu mà tôi muốn?

Ngoài ra ... (xin lỗi khi đặt hai câu hỏi cùng một lúc), việc thêm thuộc tính không chuẩn vào đánh dấu html là một ý tưởng tồi không? Hiện nay tôi đang sử dụng những thuộc tính này trong JavaScript theo cách sau:

var key = rdoPost.Key; 

Trả lời

17

tôi đã tìm thấy từ các câu hỏi/câu trả lời dưới đây là cách dễ nhất để làm điều này là thông qua mã-đằng sau bằng cách sử dụng InputAttributes tài sản như sau :

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

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

+1

có, đây là hữu ích cho RadioButton, nhưng không RadioButtonList. –

+0

Tôi đã mã hóa biểu mẫu web trong 10 năm và vừa tìm thấy thuộc tính này. Wow. – mlhDev

Các vấn đề liên quan