我有一个调用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;
但是,我想将此JS函数作为参数传递给列表。制作的第一个HTML链接不是动态创建的,因此可以轻松传递该列表,但后续链接不会为JS功能提供列表。 onclick
标记将调用JS函数并传递其他参数,但列表将变为字符串。
因此列表[["apple", []]]
将变为apple,
。这是有道理的,因为我将整个<a>
标记放入一个字符串中。但我仍然需要该链接来传递列表,或者只是以某种方式将此JS函数作为列表。任何想法如何做到这一点?
其他信息: