Möglicherweise stellen Sie fest, dass die Verwendung der Klassenauswahl zum Abrufen des ASP.NET RadioButton
Steuerelementwerts immer leer ist. Hier ist der Grund.
Sie erstellen die RadioButton
Steuerung ASP.NET
wie folgt:
<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" />
Und ASP.NET
rendert folgendes HTML für IhreRadioButton
<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>
Denn ASP.NET
wir möchten keinen RadioButton
Kontrollnamen oder keine ID verwenden, da sie sich aus irgendeinem Grund außerhalb der Hand des Benutzers ändern können (Änderung des Containernamens, des Formularnamens, des Benutzerkontrollnamens usw.), wie Sie im obigen Code sehen können.
Der einzig mögliche Weg, um den Wert von RadioButton
using jQuery zu ermitteln, ist die Verwendung der CSS-Klasse, wie in dieser Antwort auf eine völlig unabhängige Frage wie folgt erwähnt
$('span.radios input:radio').click(function() {
var value = $(this).val();
});
document.querySelectorAll("input:radio[name=theme]").forEach(function() { this.onclick=function() { var value = this.value; }; });