J'ai une case à cocher et radiobuttonlist définie comme suit:Comment désactiver asp.net radiobuttonlist via jQuery
<asp:CheckBox id="chkChange" runat="server" text="Enable" />
<br />
<asp:RadioButtonList id="rblConsole" runat="server" cssclass="console">
<asp:ListItem text="XBox 360" value="xbox" />
<asp:ListItem text="Playstation 3" value="playstation" />
</asp:RadioButtonList>
Ces contrôles sont dans une page de contenu avec une page principale de sorte que le html réelle rendu est:
<table id="ctl00_ContentPlaceHolder1_rblConsole" class="console" border="0">
<tr>
<td><input id="ctl00_ContentPlaceHolder1_rblConsole_0" type="radio" name="ctl00$ContentPlaceHolder1$rblConsole" value="xbox" /><label for="ctl00_ContentPlaceHolder1_rblConsole_0">XBox 360</label>
</td>
</tr>
<tr>
<td><input id="ctl00_ContentPlaceHolder1_rblConsole_1" type="radio" name="ctl00$ContentPlaceHolder1$rblConsole" value="playstation" /><label for="ctl00_ContentPlaceHolder1_rblConsole_1">Playstation 3</label>
</td>
</tr>
</table>
Sur le javascript onclick sur la case à cocher je veux désactiver les boutons radio dans la liste robConsole radiobutton.
Je suis en train d'obtenir les boutons radio via le sélecteur de endswith jQuery:
function ToggleEnabled() {
var isChecked = $("*[id$='chkChange']").is(":checked");
if (isChecked) {
$("*[name$='rblConsole'").removeAttr("disabled");
} else {
$("*[name$='rblConsole'").attr("disabled", "disabled");
}
}
Alors, comment désactiver ces via jQuery?
La deuxième façon de faire cela ne fonctionne pas. Il y a une table créée avec cet ID, mais les boutons radio eux-mêmes ont un numéro ajouté (par exemple _0, _1). La méthode correcte devrait être $ ("input [id^= '<% = rblConsole.ClientID%>']") removeAttr ("désactivé"); où l'identifiant commence par (^) l'identifiant du client. – y0mbo