J'ai passé des heures à essayer de résoudre ce problème et d'examiner d'autres questions StackOverflow similaires (1)(2), mais aucun ne semble avoir une réponse à mon problème ..jQuery + Rails: Comment obtenir ID utilisateur du bouton cliqué
I Impossible de passer cette erreur: ReferenceError: id is not defined
. L'alerte ne s'affiche pas aussi.
$("button.btn-tag-cat").click(function(e){
e.preventDefault();
var id = $(this).prop('id');
alert(id);
id.find('span').show();
}, function(){
id.find('span').hide();
});
J'ai essayé les manières suivantes d'utiliser la variable id mais aucune ne fonctionne.
$(id).find('span').show();
$("#" + id).find('span').show();
Cependant, quand je retire le morceau de code ci-dessous l'alerte, l'alerte apparaît avec l'ID correct appartenant au bouton.
$("button.btn-tag-cat").click(function(e){
e.preventDefault();
var id = $(this).prop('id');
alert(id);
});
Vue partielle: id bouton fait référence à une variable locale rubisid="<%= name %>"
<% q.categories_name_in.each do |name| %>
<button type="button" class="btn btn-outline-primary btn-lg btn-tag-cat" id="<%= name %>"><%= name %><span class='glyphicon glyphicon-remove'></span></button>
<% end %>
Merci pour la réponse claire, cependant, je reçois maintenant cette erreur: TypeError: id.find n'est pas une fonction – doyz
Utilisez '$ (id)' à la place de id. –
L'ID est une chaîne. utilisez '$ ('#' + id) .find (...)' –