遍历外部嵌套的 Json 以制作手风琴菜单
Iterating through external nested Json to make accordian menu
我的问题在理论上听起来很简单,但我在让菜单正常工作时遇到了很多麻烦。
正在发生的事情是,我可以像我想要的那样获取菜单项的标题,但我无法正确检索内部项,也无法正确显示它们。
这是我的Jquery:
$(document).ready(function(){
$.getJSON( "externalJson.json", function( data ) {
postData(data);
});
var html = '<ul>';
function postData(data){
/*
How I want my menu to work in structure:
<ul>
<li>
<h3><span>Header</span></h3>
<ul>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
</li>
</ul>
*/
$.each(data, function(key, value){
console.log(data[key].innerItem);
html += "<li><h3><span>" + key + "</span></h3>";
$.each(data[key].innerItem, function(i, j){
console.log(j.item);
html += "<ul>";
html += "<li><a href=" + j.link + ">" + j.item + "</a></li>";
html += "</ul>";
});
html += "</li>";
html += "</ul>";
});
$('#accordian').append(html);
};
$("#accordian h3").click(function(){
$("#accordian ul ul").slideUp();
if(!$(this).next().is(":visible")){
$(this).next().slideDown();
}
});
});
这是我的 JSON 文件,它位于一个单独的文件中:
{
"ItemOne":
{
"innerItem":
[{
"item":"cat",
"link":"http://www.google.com/"
}]
},
"ItemTwo":
{
"innerItem":
[{
"item":"kitten",
"link":"http://www.google.com/"
}]
},
"ItemThree":
{
"innerItem":
[{
"item":"meow",
"link":"http://www.google.com/"
}]
},
"ItemFour":
{
"innerItem":
[{
"item":"purr",
"link":"http://www.google.com/"
}]
}
}
如果你想看看我的所有代码,这里有一个链接:https://ide.c9.io/cherrysymphony/workspace#openfile-README.md
我不太明白我需要做什么才能使代码正常工作,就像我将其硬编码到 html 中一样。
我不确定我是否理解您的问题,但这可能是解决方案吗?
$.each(data, function(key, value){
console.log(data[key].innerItem);
html += "<li><h3><span>" + key + "</span></h3>";
html += "<ul>";
$.each(data[key].innerItem, function(i, j){
console.log(j.item);
html += "<li><a href=" + j.link + ">" + j.item + "</a></li>";
});
html += "</ul>";
html += "</li>";
html += "</ul>";
});
相关文章:
- 手风琴菜单打开和关闭
- JQuery手风琴菜单与mmenu冲突-JQuery 1.4 vs 1.7
- 手风琴菜单一直打开直到关闭
- jQuery的嵌套手风琴菜单问题
- 单击手风琴菜单外的链接时折叠jQuery手风琴
- jquery手风琴菜单不正确
- 如何创建一个优雅的手风琴菜单
- 手风琴菜单无法正常工作
- 遍历外部嵌套的 Json 以制作手风琴菜单
- 手风琴菜单 JQuery - 如何打开特定的“id”
- 使用表格构建的 Jquery 手风琴菜单
- 特定的手风琴菜单行为,可能是 jquery ui 或引导程序
- Joomla javascript(JQuery)手风琴菜单总是在单击最后一个子元素时展开所有节点
- jQuery 手风琴菜单扩展了页面长度
- 垂直手风琴菜单溢出问题
- 将引导选项卡栏转换为移动大小的手风琴菜单
- jQuery 手风琴菜单 - 默认情况下隐藏子菜单时遇到问题
- 使用手风琴菜单进行图像演示
- 我做了一个手风琴菜单,但没有子菜单的链接不起作用.
- 如何使用jQuery制作动态手风琴菜单