Вы можете заметить, что с помощью селектора классов для получения значения ASP.NET RadioButton
элементы управления всегда пусты, и вот причина.
Вы создаете RadioButton
элемент управления в ASP.NET
, как показано ниже:
<asp:RadioButton runat="server" ID="rbSingle" GroupName="Type" CssClass="radios" Text="Single" />
<asp:RadioButton runat="server" ID="rbDouble" GroupName="Type" CssClass="radios" Text="Double" />
<asp:RadioButton runat="server" ID="rbTriple" GroupName="Type" CssClass="radios" Text="Triple" />
И ASP.NET
отображает следующий HTML для вашего RadioButton
<span class="radios"><input id="Content_rbSingle" type="radio" name="ctl00$Content$Type" value="rbSingle" /><label for="Content_rbSingle">Single</label></span>
<span class="radios"><input id="Content_rbDouble" type="radio" name="ctl00$Content$Type" value="rbDouble" /><label for="Content_rbDouble">Double</label></span>
<span class="radios"><input id="Content_rbTriple" type="radio" name="ctl00$Content$Type" value="rbTriple" /><label for="Content_rbTriple">Triple</label></span>
Для ASP.NET
мы не хотим использовать RadioButton
имя элемента управления или идентификатор, потому что они могут меняться по любой причине не из рук пользователя (изменение имени контейнера, имени формы, имени пользовательского контроля и т. Д.) можно увидеть в коде выше.
Единственный возможный способ получить значение RadioButton
с использованием jQuery - это использование класса css, как упомянуто в этом ответе на совершенно несвязанный вопрос, следующий как
$('span.radios input:radio').click(function() {
var value = $(this).val();
});