如果xml包含重复(多个)标记

时间:2015-09-25 04:40:20

标签: javascript arrays json xml xml-parsing

我正在尝试使用库将XML转换为java x2jsxml2json

当我转换时,我无法维持订单

这是我的XML:

<OBJECT name="myobject">
  <popup manager="mymanager">
    <Item>
        <m>P</m>
    </Item>
    <menu id="admin">
        <Text></Text>
        <m>S</m>
        <Item id="UnLocked">
            <m>U</m>
        </Item>
    </menu>
    <Item id="separator"></Item>
</popup></OBJECT>

当我转换标签时 项目数组以及从JSON重新创建XML时

<OBJECT name="myobject">
<popup manager="mymanager">
    <Item>
        <m>P</m>
    </Item>
    <Item id="separator"></Item>
    <menu id="admin">
        <Text></Text>
        <m>S</m>
        <Item id="UnLocked">
            <m>U</m>
        </Item>
    </menu>
</popup></OBJECT>

项目标记变为数组且<Item id="separator"></Item>正在上升。

我们如何解决这个问题?

这里是plunker:link

1 个答案:

答案 0 :(得分:1)

由于您发现的原因,您无法自动将此类结构转换为JSON。我会编码它类似于:

{
  "name": "myobject",
  "popup": {
    "manager": "mymanager",
    "items": [
      {
        "m": "P"
      },
      {
        "id": "admin",
        "type": "menu",
        "item": {
          "id": "UnLocked",
          "m": "P"
        }
      },
      {
        "id": "separator"
      }
    ]
  }
}