j'ai beaucoup de champs de saisie comme celui-ci
<input type="radio" name="name" id="name" onchange="enableTxt()" />
quand je clique sur ce bouton radio, je veux capturer l'identifiant de l'entrée radio. J'utilise le code suivant
function enableTxt() {
var id = $(this).attr("id");
alert(id);
}
Je reçois cette erreur
a.attributes is undefined
HTML:
<input type="radio" name="name" id="name" onchange="enableTxt(this)" />
JS:
function enableTxt(elem) {
var id = $(elem).attr("id");
alert(id);
}
Le html
<button class="destroy" id="123">
Le jQuery
$('button.destroy').on('click', function(e){
e.preventDefault();
console.log(this.id);
Vous pouvez simplement passer l'ID du HTML
<input type="radio" name="name" id="name" onchange="enableTxt($(this).attr('id'))" />
function enableTxt(id)
{
alert(id);
}
passe ceci à la fonction
enableTxt(this)
function enableTxt(item) {
var id = $(item).attr("id");
alert(id);
}
Essaye ça
alert($("input:radio").attr('id'));
Une autre option est avec JQ
$("#name").on('onchange',enableText);
Avec cela, votre objet sera le courant this