循环数组给我0长度

时间:2016-05-13 10:57:12

标签: javascript arrays

这应该是一个相当简单的过程,但我遇到了最困难的时间。我必须找到一组元素。所以我不得不深入挖掘一个包含子元素的元素,然后该子元素包含另一个子元素,该子元素包含我需要处理的项目数组。我能够控制掉最后一个阵列但是无法获得它的长度。

这就是console

中的样子
console.log(angular.element(element[0].children[0])[0].children);
console.log(angular.element(element[0].children[0])[0].children.length);

var myArray = angular.element(element[0].children[0])[0].children;

for(var i = 0; i < myArray.length; i++){
    console.log(i + " object found");
  }

所以我的for循环没有得到任何东西。显然因为它应该是3的长度为0.有人可以告诉我,我是否会发疯。

更新

如果你们想要检查出来的话,可以看一下Plunker。一切都已经确定。只需在浏览器上进入开发人员工具即可。我做的唯一区别是添加了一些额外的元素。所以不是3我做了5.而且我还添加了几个方法。专门针对ID。但是仍然没有把它实现到for循环中。

1 个答案:

答案 0 :(得分:1)

记录element[0].innerHTML给出:

<div class="ng-binding" ng-bind-html="renderHtml(content)"></div>

您的div为空(没有#mynewid和子项),因为在您请求它们时,renderHtml(content)函数尚未创建元素。

示例:

setTimeout(function() {
    var myArray = document.getElementById("mynewid").children;
    for(var i = 0; i < myArray.length; i++){
        console.log(myArray[i] + " object found");
    }
}, 1000);