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. 初期値を -1 に設定して、rownum の変数を作成します。
  2. アイテム要素をループしますが、最後から開始します
  3. variable-value が rowNum-element の内容と異なるかどうかを確認してください。yes の場合、変数値を rowNum-element のコンテンツに設定し、現在の item-element の nextSibling の前に新しいノードを挿入します

デモ: http://jsfiddle.net/doktormolle/n5wUC/

于 2012-09-26T23:00:57.653 に答える