我有以下代码:
var parentEls = $(root)
.find("credit standard")
.parents()
.map(function () {
return this.tagName;
})
.get()
.join(" > ");
alert(parentEls);
$("#breadcrumb").append("<p>" + parentEls + "</p>");
这可以很好地归还父母。但是,我不想返回tagName,我希望每个父项的name属性。我试过了
.map(function () {
return this.attr("name");
})
但这不起作用。有没有办法在不诉诸循环的情况下做到这一点?
答案 0 :(得分:2)
attr
不是本机方法,它是一个jQuery方法。因此,尝试将this
包装成jQuery构造函数:
return $(this).attr('name');
或改为使用getAttribute
方法:
return this.getAttribute('name');
答案 1 :(得分:0)
你必须用jQuery包装元素才能使用.attr
。使用
this.name
或$(this).attr('name')
答案 2 :(得分:0)
我会尝试以下
.map(function () {
return $(this).attr("name");
})