.wrap()不使用jQuery处理自定义XML

时间:2012-10-05 14:47:47

标签: javascript jquery xml

所以我有这个xml

<Item name="Alpha">
   <Field name="CreationDateTime">2012-04-26</Field>
   <Field name="Material" readOnly="X"> Congress </Field>
</Item>
<Item name="Beta">
  <Field name="CreationDateTime">2012-04-26</Field>
  <Field name="Material" readOnly="X"> Congress </Field>
</Item> 

我想用jQuery

将它包装在这样的节点中
<parent>
 <Item name="Alpha">
   <Field name="CreationDateTime">2012-04-26</Field>
   <Field name="Material" readOnly="X"> Congress </Field>
</Item>
<Item name="Beta">
  <Field name="CreationDateTime">2012-04-26</Field>
  <Field name="Material" readOnly="X"> Congress </Field>
</Item></parent>

我试过$(xml).wrap('<parent />')但它似乎不适用于非HTML标签名称!同样,我尝试了before()和append()的组合。

有没有办法在jQuery中快速完成它而不必将其转换为字符串。如果这是最后一个选项,那么我该如何转换成字符串呢?

感谢。

1 个答案:

答案 0 :(得分:0)

您可以应用xsl来包装xml doc,例如

<xsl:template match="/">
    <parent>
        <xsl:apply-templates/>
    </parent>
</xsl:template>

<xsl:template match="@*|node()">
    <xsl:copy>
         <xsl:apply-templates/>
    </xsl:copy>
 </xsl:template>

应该为您提供所需的输出