как сделать вложенные строки узла клонировать - PullRequest
0 голосов
/ 05 декабря 2018

Я должен сделать дерево узлов в Javascript.Я использую данные JSON для создания строки.Затем я делаю еще одну вложенную строку, которая уже присутствует в родительской строке.Как сделать вложенную строку в Javascript?

Here is a picture

function show_categories(obj, rowNoz) {
    for (rowNoz_i = 0; rowNoz_i < obj.length; rowNoz_i++) {
        var i = obj[rowNoz_i].inquiry_dtl_idz;
        if (typeof i !== "undefined") {
            var div = "";
            var temp = $("#row_container >");
            var nodes;
            var row_j = 0;
            for (rowNoz_j = 0; rowNoz_j < i.length; rowNoz_j++) {
                row_j++;
                var j = i[rowNoz_j].inquiry_dtl1_idz;
                node = temp.clone(true);
                //--parent row
                node
                    .find('[name^="Article_id["]')
                    .parents("#parent_row0")
                    .attr("id", "parent_row" + row_j);
                //--href
                node.find(".glyphicon-chevron-down").attr("href", "#p_row" + row_j);
                //--remove btton
                node.find(".glyphicon-remove").attr("id", "#remove_btn_" + row_j);
                node
                    .find(".glyphicon-remove")
                    .attr("onclick", "removeparent(" + row_j + ")");
                //--collapse
                node.find(".collapse").attr("id", "p_row" + row_j);
                node.find(".button_child").attr("id", "add_btn_" + row_j);
                node
                    .find("#add_btn_" + row_j)
                    .attr("onclick", "addChildrow(" + row_j + ",1)");

                if (typeof j !== "undefined") {
                    console.log(j.length);
                    // alert(j.length);
                    for (rowNoz_k = 0; rowNoz_k < j.length; rowNoz_k++) {
                        node.find(".sub_child").attr("class", "sub" + row_j);
                        node.find(".sub" + row_j).attr("id", "sub_child" + rowNoz_k);
                        // alert('sub'+row_j);
                        console.log(
                            "-" +
                            rowNoz_k +
                            "--inquiry_dtl1_id:" +
                            j[rowNoz_k].inquiry_dtl1_id
                        );

                        $("#row_container").append(node);
                    }
                }
                // console.log(node);
            }
        }
    }
}
...