我的源XML:XML:删除父,克隆兄弟姐妹
<company>
<pricelist>
<category></category>
<subcategory></subcategory>
<item></item>
<item></item>
<item></item>
// x number of items
</pricelist>
<pricelist>
<category></category>
<subcategory></subcategory>
<item></item>
<item></item>
<item></item>
// x number of items
</pricelist>
// x number of pricelists
</company>
现在,想自动建立给定的XML编辑器:
一,删除所有不必要的父母,根据对他们的孩子属性值。
在我的例子中:全部删除<pricelist>
其中<category>
是x,y。
我部分解决了这个问题。选择是
/company/pricelist[category[@id='90' or @id='89']]
,现在已被删除,可能removeChild();
II。克隆到<category>
和<subcategory>
到所有兄弟<item>
s。
我没有线索,但如何开始在这一个。我正在考虑一个循环遍历所有价格表,复制它们的<category>
和<subcategory>
,并以某种方式将它们克隆到价格表内的每个兄弟<item>
(类别和子类别在每个价格表下都是唯一的)。
步骤II结果:
<pricelist>
<category>cat1</category>
<subcategory>sub1</subcategory>
<item>
<category>cat1</category>
<subcategory>sub1</subcategory>
</item>
<item>
<category>cat1</category>
<subcategory>sub1</subcategory>
</item>
<item>
<category>cat1</category>
<subcategory>sub1</subcategory>
</item>
...
</pricelist>
采用这种结构需要两个嵌套循环。 – Mouser 2015-02-09 13:28:38
请将您的JS代码添加到问题中。 – 2015-02-09 13:37:08
将用我最初的JavaScript代码更新问题。 – 2015-02-09 14:14:25