我有一个html块,其中包含很多孩子。
<div id="selectedId">
<div class=".."><a class=".."></a>
<button style=".."></button>
</div>
<div id="otherId">
<table></table>
</div>
</div>
我正在使用jquery来选择父级。然后我尝试遍历所有后代并访问各种属性,例如class或innerHtml。我似乎无法访问他们的属性。
function rewriteCategoryName(oldCategoryName, newCategoryName)
{
// get div parent
var parentDiv = $("#selectedId");
parentDiv.find('*').each( function(el,key) {
alert(el+" --");
el.each( function(el,key) {
// i get just numbers here, and undefined on everything
// i try to access
});
});
}
有什么想法吗?我在这做错了什么?有没有我缺少的概念?
答案 0 :(得分:1)
$("#selectedId").find('*').each( function(el,key) {
$(this).each(function() {
$.each(this.attributes, function() {
// this.attributes is not a plain object, but an array
// of attribute nodes, which contain both the name and value
if(this.specified) {
console.log(this.name, this.value);
}
});
});
});
答案 1 :(得分:1)
你已经在每个函数中切换了顺序,键是第一个参数,元素是第二个,所以改变:
$("#selectedId").find('*').each( function(el,key)
为:
$("#selectedId").find('*').each( function(key,el) {