Javascript Can';t在每个父div/类中获取子div id

Javascript Can';t在每个父div/类中获取子div id,javascript,jquery,multidimensional-array,Javascript,Jquery,Multidimensional Array,当我尝试在每个父div/类中获取子div id时,我会收到错误“UncaughtTypeError:无法设置未定义的属性“0”。我将此javascript与scriptaculous一起使用,因此我关闭了“$”快捷方式 HTML示例: <div id="group1" class="section"> <h3 class="handle"><input type="hidden" name="groupName1" value="MyGroup1">

当我尝试在每个父div/类中获取子div id时,我会收到错误“UncaughtTypeError:无法设置未定义的属性“0”。我将此javascript与scriptaculous一起使用,因此我关闭了“$”快捷方式

HTML示例:

<div id="group1" class="section">
     <h3 class="handle"><input type="hidden" name="groupName1" value="MyGroup1">MyGroup1</h3>

    <div id="item_73548" class="lineitem">item a</div>
    <div id="item_73386" class="lineitem">item b</div>
    <div id="item_73163" class="lineitem">item c</div>
</div>
<div id="group2" class="section">
     <h3 class="handle"><input type="hidden" name="groupName2" value="MyGroup2">MyGroup2</h3>

    <div id="item_73548" class="lineitem">item d</div>
    <div id="item_73386" class="lineitem">item e</div>
    <div id="item_73163" class="lineitem">item f</div>
</div>

在这里摆弄:

在尝试向数组中添加第二级元素之前,只需确保将
组[i]
设置为数组

$.noConflict();
var sections = document.getElementsByClassName('section');

var groups = new Array();

for (i = 0; i < sections.length; i++) {
    var section = sections[i];
    var sectionID = section.id;

    groups[i] = [];

    var j = 0;

    jQuery.each(jQuery("#" + sectionID + " .lineitem"), function () {

        groups[i][j] = jQuery(this).attr('id');
        j++;

    });

}

console.log(groups);
$.noConflict();
var sections=document.getElementsByClassName('section');
变量组=新数组();
对于(i=0;i
为什么要混合使用本机DOM访问和jQuery?使用jQuery.forEach获取节,然后对每个jQuery节对象执行选择器,以获取div子项
$('.lineitem',this.attr('id')同意,这是使用scriptaculous库用纯javascript编写的更大的遗留脚本的一小部分。所以我只是在我更改的部分上使用jQuery。我希望我有时间从头重写它。
groups[0][0]="item_73548";
groups[0][1]="item_73386";
groups[0][2]="item_73163";
groups[1][0]="item_73548";
groups[1][1]="item_73386";
groups[1][2]="item_73163";
$.noConflict();
var sections = document.getElementsByClassName('section');

var groups = new Array();

for (i = 0; i < sections.length; i++) {
    var section = sections[i];
    var sectionID = section.id;

    groups[i] = [];

    var j = 0;

    jQuery.each(jQuery("#" + sectionID + " .lineitem"), function () {

        groups[i][j] = jQuery(this).attr('id');
        j++;

    });

}

console.log(groups);