最佳答案
我在一个 HTML 页面上有几个元素,它们具有相同的类,但是它们是不同的元素类型。我想找出元素的标签名称,因为我循环遍历它们-但是。Attr 不接受“ tag”或“ tagname”。
我的意思是,考虑一下页面上的这些元素:
<h1 class="rnd">First</h1>
<h2 id="foo" class="rnd">Second</h2>
<h3 class="rnd">Third</h3>
<h4 id="bar" class="rnd">Fourth</h4>
现在我想运行类似的程序来确保我的元素都有一个 id,如果还没有定义的话:
$(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());
}
});
});
我希望得到的结果是 H2和 H4元素的 id 是
rndh2_1
rndh4_3
分别。
对于如何发现由“ this”表示的元素的标签名有什么想法吗?