var fieldsettags = document.getElementsByTagName('fieldset');
textareatags = new Array();
internalarray = new Array();
for (var x = 0; x < fieldsettags.length; x++) {
for (var y = 0; y < fieldsettags[x].childNodes.length; y++) {
if (fieldsettags[x].getElementsByTagName('textarea')[y]) {
internalarray.push(fieldsettags[x].getElementsByTagName('textarea')[y]);
}
}
textareatags.push(internalarray);
internalarray = [];
}
<fieldset>
<legend>something</legend><textarea>something</textarea><span>somethings</span>
<div>something</div>
<legend>something</legend><textarea>something</textarea><span>somethings</span>
<div>something</div>
<legend>something</legend><textarea>something</textarea><span>somethings</span>
<div>something</div>
<legend>something</legend><textarea>something</textarea><span>somethings</span>
<div>something</div>
<legend>something</legend><textarea>something</textarea><span>somethings</span>
<div>something</div>
<legend>something</legend><textarea>something</textarea><span>somethings</span>
<div>something</div>
</fieldset>
There are many fieldset tags inside my document, here is only one example for imagination. I want to have only textarea elements inside an array. Where am I going wrong? Remember inside each fieldset tag, the order and no. of elements is also different. Do you suggest any other method for getting them?