动态创建将列表传递给JavaScript函数的HTML链接

时间:2018-03-20 13:47:03

标签: javascript html list parameters hyperlink

我有一个调用JavaScript函数的HTML链接,而这个函数又会生成一个新链接。这个新链接在单击时调用相同的JS函数,生成另一个链接等。该函数还会创建一个新的div,其中添加了下一个链接。



function displayChildren(displayLocation, myList) {
        innerHtml = "";
        for (item in myList) {
            name = myList[item];
            newDisplayLocation = displayLocation + "/" + name;
            innerHtml += "<a href='#' onclick='displayChildren(\"" + newDisplayLocation + "\", " + myList + ");'>" + name + "</a>";
            innerHtml += "<div id='" + newDisplayLocation + "'></div>";
        }
        document.getElementById(displayLocation).innerHTML = innerHtml;
    }
&#13;
<a href="#" onclick="displayChildren('{{myList.0}}', {{myList.1}})">{{myList.0}}</a><br />
<div id="{{myList.0}}"></div>
&#13;
&#13;
&#13;

但是,我想将此JS函数作为参数传递给列表。制作的第一个HTML链接不是动态创建的,因此可以轻松传递该列表,但后续链接不会为JS功能提供列表。 onclick标记将调用JS函数并传递其他参数,但列表将变为字符串。

因此列表[["apple", []]]将变为apple,。这是有道理的,因为我将整个<a>标记放入一个字符串中。但我仍然需要该链接来传递列表,或者只是以某种方式将此JS函数作为列表。任何想法如何做到这一点?

其他信息:

  • 我正在使用它来创建一个将显示所有节点的树结构 点击的孩子。
  • 每次将列表传递给JS函数时,列表都会更改。它实际上传递了节点的子节点列表。
  • 页面没有刷新。

0 个答案:

没有答案
相关问题