我有一个如下所示的 xml
以上是我的 xml 文件的示例。现在我的要求是读取 xml 文件并使用 jquery 构建一个菜单。
有人可以帮帮我吗
你可以试试这个
XML
<?xml version="1.0" encoding="utf-8" ?>
<MenuRoot>
<Menu id="home" text="Home" url="home.aspx"></Menu>
<Menu id="projects" text="Projects" url="projects.aspx">
<SubMenu id="sub1" text="Sub One" url="subone.aspx"></SubMenu>
<SubMenu id="sub2" text="Sub Two" url="subtwo.aspx"></SubMenu>
</Menu>
</MenuRoot>
HTML
<div id="menu_wrapper"></div>
JS
$(document).ready(function(){
$.ajax({
type: "GET",
url: "jquery_xml.xml",
dataType: "xml",
success: function(xml){
var ul_main=$("<ul />");
$(xml).find("Menu").each(function(){
if($(this).children().length)
{
var ulSub=$("<ul />");
$(this).children().each(function(){
ulSub.append("<li id="+$(this).attr("id")+"><a href="+$(this).attr("url")+">"+$(this).attr("text")+"</a></li>");
});
var li=$("<li id="+$(this).attr("id")+"><a href="+$(this).attr("url")+">"+$(this).attr("text")+"</a></li>");
ul_main.append(li.append(ulSub))
}
else ul_main.append("<li id="+$(this).attr("id")+"><a href="+$(this).attr("url")+">"+$(this).attr("text")+"</a></li>");
});
$("#menu_wrapper").append(ul_main);
}
});
});
输出
您只需要使用css
.