jquery从外部文件中删除标签并保存它们

时间:2010-10-04 13:42:21

标签: jquery xml tags

问候,

我需要删除XML文件中的标签(大约1000个)。我用jquery尝试过,但没有成功:

<html>
<!--jquery app removes specific <t2_patch ...>-tag -->
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>
<body>

<button>Kill t2_patch-tags </button>
<script>
        $("button").click(function () {
    $('/home/dan/series14AreaListOnly.xml').remove('t2_patch');
});
</script>
</body>
</html>

我的目标是删除300MB大型XML文件中的t_patch -tags。我到目前为止做的这种方法还不错,或者我完全错了。如何保存更改? (因为remove()函数实际上不会直接删除xml文件中的任何内容?)。

提前感谢任何提示和最好的问候

丹尼亚尔

2 个答案:

答案 0 :(得分:0)

你最好的办法是设置一个后端php脚本并ping它要删除的实体并等待回调,更快更可靠,更少可黑客攻击,因为如果有人这样做:

 $('/home/dan/series14AreaListOnly.xml').remove('*');

答案 1 :(得分:0)

为什么不用XSLT?并且,在XML中删除标记的含义是什么?

如果您要剥离元素,此样式表会删除输入中的所有t2_patch元素:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="node()|@*">
        <xsl:copy>
            <xsl:apply-templates select="node()|@*"/>
        </xsl:copy>
    </xsl:template>
    <xsl:template match="t2_patch"/>
</xsl:stylesheet>

如果您要删除元素但保留其内容,请使用以下样式表:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="node()|@*">
        <xsl:copy>
            <xsl:apply-templates select="node()|@*"/>
        </xsl:copy>
    </xsl:template>
    <xsl:template match="t2_patch">
        <xsl:apply-templates select="node()"/>
    </xsl:template>
</xsl:stylesheet>

注意:覆盖身份规则。