J'ai plusieurs éléments sur une page HTML qui ont la même classe, mais ils sont de différents types d'éléments. Je veux savoir le nom de la balise de l'élément que je boucle sur eux - mais .attr ne prend pas de "tag" ou "tagname".
Voici ce que je veux dire. Tenir compte de ces éléments sur une page:
<h1 class="rnd">First</h1>
<h2 id="foo" class="rnd">Second</h2>
<h3 class="rnd">Third</h3>
<h4 id="bar" class="rnd">Fourth</h4>
Maintenant, je veux faire quelque chose de ce genre pour s'assurer que mes éléments ont tous un id si l'on n'était pas déjà défini:
$(function() {
$(".rnd").each(function(i) {
var id = $(this).attr("id");
if (id === undefined || id.length === 0) {
// this is the line that's giving me problems.
// .attr("tag") returns undefined
$(this).attr("id", "rnd" + $(this).attr("tag") + "_" + i.toString());
}
});
});
Le résultat que je voudrais serait que le H2 et H4 éléments pourrait avoir une id de
rndh2_1
rndh4_3
respectivement.
Des idées sur comment je peut découvrir le nom de la balise de l'élément représenté par "cela"?