0

GetOrgChart ノードを編集して、対応するノードの ID が必要な URL を指定しようとしています。私はここで立ち往生しており、解決策を希望しています。私のコードは次のとおりです

                getOrgChart.themes.monica.box += '<g transform="matrix(1,0,0,1,350,10)">'
                        + btnAdd
                        + btnEdit
                        + btnDel
                        + '</g>';
                        var orgChart = new getOrgChart(chartElement, {
                            scale: 0.5,
                            theme: "monica",
                            primaryFields: resp2.primaryFields,
                            photoFields: [resp2.photoField],
                            enableZoom: true,
                            enableEdit: true,
                            enableDetailsView: true,
                            dataSource: processed
                        });    
                function getNodeByClickedBtn(el) {
                    while (el.parentNode) {
                        el = el.parentNode;
                        if (el.getAttribute("data-node-id"))
                            return el;
                    }
                    return null;
                }

                var init = function () {
                    var btns = document.getElementsByClassName("btn");
                    for (var i = 0; i < btns.length; i++) {

                        btns[i].addEventListener("click", function () {                  
                            var nodeElement = getNodeByClickedBtn(this);
                            var action = this.getAttribute("data-action");
                            var id = nodeElement.getAttribute("data-node-id");
                            var node = orgChart.nodes[id];

                            switch (action) {
                                case "add":

                                    window.location.href='${request.contextPath}' + resp2.addLink;
                                    break;
                                case "edit":
                                    //console.log('&id=' + processed['id']);
                                    //    return;
                                    window.location.href='${request.contextPath}' + resp2.editLink + '&id=' + resp.data[]['id'];
 break;
   case "delete":
                                    window.location.href='${request.contextPath}' + resp2.deleteLink;

                                    break;
                            }
                        });
                    }
                }
                init();
                        },
                        error: function (ex) {
                            console.log(ex);
                        }
                    });
                },
                error: function (ex) {
                    console.log(ex);
                }
            });

問題コードはこちら

 case "edit":
//console.log('&id=' + processed['id']);
//    return;
                                    window.location.href='${request.contextPath}' + resp2.editLink + '&id=' + resp.data[]['id'];
                                    break;

resp.data[index] 変数の id にアクセスするにはどうすればよいですか?

4

1 に答える 1