Tôi vừa mới bắt đầu đọc trên JavaScript và tôi đang cố gắng viết một hàm đệ quy nhỏ để tìm kiếm qua các nút đã cho và trả về một danh sách các giá trị dưới dạng một chuỗi.Javascript - Hàm đệ qui để lặp qua các phần tử
cấu trúc HTML của tôi có thể là một cái gì đó giống như
<div id="parentfolder">parentfolder1
<div class ="item1">item1</div>
<div class ="item2">item2</div>
<div id="parentfolder">parentfolder2
<div class ="item1">item1</div>
<div class ="item2">item2</div>
</div>
</div>
Và đây là chức năng Javascript của tôi:
function jsoncreator(parentfolderclass){
var jstring = '';
//get first occurance of parent folder
var parentfolder = document.getElementById(parentfolderclass);
var childnodes = parentfolder.childNodes;
for (property in childnodes){
jstring += property+ childnodes[property];
if(childnodes[property] === parentfolderclass){
jsoncreator(parentfolderclass);
jstring += childnodes[property].value + '<br>';
}
else{
//jstring += childnodes[i].value + '<br>';
}
}
document.write(jstring);
}
Tất cả im nhận lại là
0[object Text]1[object HTMLDivElement]2[object Text]3[object HTMLDivElement]4[object Text]5[object HTMLDivElement]6[object Text]length7itemfunction item() { [native code] }
Khi tôi cố gắng in giá trị childnodes, tôi nhận được một loạt các trả về không xác định.
Nếu ai đó có thể giải thích những gì tôi đang làm sai, tôi thực sự đánh giá cao điều đó.
Đối với ID đầu tiên, trùng lặp không phải là HTML hợp lệ. Ngoài ra, bạn đã không thực sự mô tả những gì các mảng trả về nên chứa chính xác. –
@ FabrícioMatté nó sẽ trả về một danh sách các giá trị như một chuỗi – dudemanbearpig
"Các giá trị" như trong nội dung văn bản của chúng? –