【发布时间】:2013-12-04 20:01:56
【问题描述】:
我有一个描述网站菜单的 xml:
<?xml version="1.0" encoding="UTF-8"?>
<menu>
<item titulo="Início" tipo="conteudo" codigo="inicio" classe="btnMenu01" />
<item titulo="O Sintran" tipo="submenu" codigo="osintran" classe="btnMenu01">
<subitem titulo="Apresentação" tipo="pagina" codigo="apresentacao" classe="btnMenu02" />
<subitem titulo="Editorial" tipo="lista" param="artigos,assunto,editorial" codigo="editorial" classe="btnMenu02" />
<subitem titulo="Estatuto" tipo="arquivos" param="descricao,estatuto" codigo="estatuto" classe="btnMenu02" />
</item>
<item titulo="Notícias" tipo="conteudo" codigo="noticias" classe="btnMenu01" />
etc...
</menu>
只有两个级别,所以很简单。我通过这一行传递给 JavaScript:
var SubMenus = <?php echo(json_encode($SubMenus)) ?>;
我可以通过以下方式列举我需要的值:
for(i in SubMenus){
console.log("Submenu "+i+"...");
Atts = SubMenus[i]["@attributes"];
for(j in Atts){
console.log(" - "+j+": "+Atts[j]);
}
}
问题是 @attributes 对 JavaScript Object 类型没有任何意义,我自己发现了这个属性。所以我不确定我是否使用了正确的技术来完成这项任务,我可能会使用一种在事情变得复杂时会崩溃的方法......
你是如何完成这项任务的?或者你觉得这样可以吗?
【问题讨论】:
标签: javascript php xml json object