我有一個節點標識列表。我想將「-Selected」追加到給定的一組節點ID中的所有文本節點。請讓我知道我們如何使用XSL實現相同?如何修改使用XSL的指定節點集內的文本內容?
輸入:
<node1 id="a">
<node2 id="b">
<node3 id="c">Text node0</node3>
<node4 id="d">
<node5 id="e">Text node1</node5>
<node6 id="f">Text node2</node6>
</node4>
</node2>
<node7 id="g">Text node3
<node8 id="h" align="center">Text node4</node8>
<node9 id="i">Text node5</node9>
</node7>
<node10 id="j">Text node6
</node10>
<node11 id="h">Text node7
</node11>
</node1>
輸入參數:節點ID的列表
<nodes>
<node>b</node>
<node>g</node>
<node>h</node>
</nodes>
如果輸入參數具有節點「A」然後我需要與選定要追加的所有文本節點。
預期輸出:
<node1 id="a">
<node2 id="b">
<node3 id="c">Text node0 - Selected<node3/>
<node4 id="d">
<node5 id="e">Text node1 - Selected</node5>
<node6 id="f">Text node2 - Selected</node6>
</node4>
</node2>
<node7 id="g">Text node3 - Selected
<node8 id="h" align="center">Text node4 - Selected</node8>
<node9 id="i">Text node5 - Selected</node9>
</node7>
<node10 id="j">Text node6
</node10>
<node11 id="h">Text node7 - Selected
</node11>
</node1>
不會選擇文本節點3,因爲它是''的子節點,還是隻希望文本節點是所選節點的子元素的子節點? –
2010-05-28 15:30:32
你說得對。文本節點3也應該被選中。我的輸入參數也被編輯。它具有元素節點的id值。 – user323719 2010-05-28 15:40:31
再好問題(+1)。查看我的答案,找到非常簡單直接的解決方案。 – 2010-05-28 16:32:18