Bir HTML sayfasında aynı sınıfa sahip birkaç öğe var - ama bunlar farklı öğe türleri. Öğenin etiket adını, üzerlerinde dönerken bulmak istiyorum - ancak .attr "etiket" veya "etiket adı" almıyor.
İşte demek istediğim. Bir sayfadaki şu unsurları düşünün:
<h1 class="rnd">First</h1>
<h2 id="foo" class="rnd">Second</h2>
<h3 class="rnd">Third</h3>
<h4 id="bar" class="rnd">Fourth</h4>
Şimdi, önceden tanımlanmamış öğelerimin hepsinin bir kimliği olmasını sağlamak için buna benzer bir şey çalıştırmak istiyorum:
$(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());
}
});
});
İstediğim sonuç, H2 ve H4 öğelerinin bir id'sinin olması olacaktır.
rndh2_1
rndh4_3
sırasıyla.
"Bu" ile temsil edilen öğenin etiket adını nasıl keşfedebileceğime dair bir fikriniz var mı?