0
我试图在JavaScript中的递归函数应该基本上给我HTML像下面使用JavaScript递归函数不工作
<li><a class="expand">+</a> <span class="treeNodeInner"><a id="7471">Ringtones</a>
<ul>
<li><span class="treeNodeInner"><a id="7995">Top Tones</a></span></li>
<li><span class="treeNodeInner"><a id="8642">Country</a></span></li>
<li><span class="treeNodeInner"><a id="8640">Rock</a></span></li>
</ul>
</span></li>
我使用下面的功能,使使用javascript上面的HTML创建HTML。 它基本上是一个树视图,我们将有节点和子节点的东西。
我奋力的实现通过以下功能上面的HTML结构,请与下面的功能建议修改
function GenerateNodes(categItem) {
var parentNode = "<li>"; //parent li
if (categItem.SubCategory != null && categItem.SubCategory != undefined && categItem.SubCategory.Count > 0) {
parentNode = "<li><a class='expand'>+</a>";
}
parentNode += "<input type='radio' name='category' /><span class='treeNodeInner'><a id='" + categItem.ID + "'>" + categItem.name + "</a> "; //need to close the span
if (categItem.SubCategory != null && categItem.SubCategory != undefined && categItem.SubCategory.Count > 0) {
var subNode = "<span><ul>";
for (var index = 0; index < categItem.SubCategory.Count; index++) {
subNode += GenerateNodes(categItem.SubCategory[index]);
subNode += "</ul></span>"
}
parentNode += subNode
}
parentNode += "</span></li>"
}
感谢
你还是不在你的代码中使用jQuery?我没有在您的示例中看到jQuery功能的单一引用。 – 2011-05-09 09:40:24
好吧,我现在没有使用任何jquery,但如果有人可以告诉我,我会用它 – Amit 2011-05-09 09:41:55
而不是'categItem.SubCategory!= null && categItem.SubCategory!= undefined'你可以只有'catagItem.SubCategory'如果它是'null'或'undefined',它将评估为'false'。 – geekchic 2011-05-09 09:42:22