如何逃离或替换“&"在xml文件中使用jQuery

How to escape or replace "&" in xml file using jQuery?

本文关键字:xml 文件 jQuery quot amp 逃离 替换 何逃离      更新时间:2023-09-26

我有一个xml文件,它可能会在进程中插入5个特殊字符,如"&"。我知道xml在解析这些字符时会抛出错误。我使用jQueryajax方法从xml文件中获取数据。有没有什么方法可以克服javascript中的语法分析器错误,比如替换特殊字符?

简而言之,是的,假设您将xml作为字符串获取(如果我没有记错的话,jQuery确实如此)。然后您可以执行以下操作:

xmlstr = xmlstr.replace(/&/g, "&");

用于要替换的任何字符。

假设用户输入以下内容:

<foo> &gt;bar&lt; hi & bye &gt;/bar&lt;

现在,他们的意思可能是:

<foo> &gt;bar&lt; hi &amp; bye &gt;/bar&lt; </foo>

但他们可能意味着:

<foo> &amp;gt;bar&amp;lt; hi &amp; bye &amp;gt;/bar&amp;lt; </foo>

您可以通过关闭未关闭的标记并转义&s.我不熟悉任何能为你做这件事的javascript库。

XMLText = XMLText.Replace("&", "&amp;");
XMLText = XMLText.Replace("""", "&quot;");
XMLText = XMLText.Replace("'", "&apos;");
XMLText = XMLText.Replace("<", "&lt;");
XMLText = XMLText.Replace(">", "&gt;");
return XMLText;