1

如何遍历 xml 节点列表(tag="items"),并在这样做的同时在特定位置插入一个新节点,在这种情况下,当 chileNode 值更改时(tag="rowNum")?这是一个显示我的输入和我想要的输出的示例:

启动xml:

<items>
  <item>
     <rowNum>1</rowNum>
     <description>some text</description>
  </item>
  <item>
     <rowNum>1</rowNum>
     <description>some more text</description>
  </item>
  <item>
     <rowNum>2</rowNum>
     <description>some text</description>
  </item>
</items>

期望的输出:

<items>
  <item>
     <rowNum>1</rowNum>
     <description>some text</description>
  </item>
  <item>
     <rowNum>1</rowNum>
     <description>some more text</description>
  </item>
  <item>
     <rowNum>1</rowNum>
     <description>last row 1 item</description>
  </item>
  <item>
     <rowNum>2</rowNum>
     <description>some text</description>
  </item>
  <item>
     <rowNum>2</rowNum>
     <description>last row 2 item</description>
  </item>
</items>
4

1 回答 1

0
  1. 为 rownum 创建一个变量,其初始值设置为例如 -1
  2. 循环遍历项目元素,但从末尾开始
  3. 检查变量值是否与 rowNum 元素的内容不同。如果是,则将 variable-value 设置为 rowNum-element 的内容,并在当前 item-element 的 nextSibling 之前插入新节点

演示:http: //jsfiddle.net/doktormolle/n5wUC/

于 2012-09-26T23:00:57.653 回答