0

我必须使用 jQuery 处理一系列 XML 文件,这些文件在 XML 文件的最后一个结束标记之后包含无效字符。如果我手动删除字符,则文件可以使用以下代码完美运行:

  $.ajax({
    type: "GET",
    url: "data/brackets.xml",
    dataType: "xml",
    success: parseXml
  });

有没有一种简单的方法使用上面的代码在读取文件时将其删除?

4

2 回答 2

4

数据类型需要一个有效的xmlXML 文档才能调用成功回调。您可以改为将数据类型设置为text/plain. 然后,您的结果将是一个字符串,您可以根据需要对其进行操作(删除某些字符),然后手动解析 XML 文档。

您还可以为 xml 数据类型添加自己的转换器:

$.ajax({
   type: "GET",
   url: "data/brackets.xml",
   dataType: "xml",
   success: parseXml,
   converters: {
       "text xml": function(xmlString) {
          // manipulate xmlString;
          return $.parseXML(xmlString);
       }
   }
});
于 2012-08-21T14:06:49.527 回答
1

谢谢,这帮助我指出了正确的方向。我使用此代码使其工作:

  $.ajax({
     type: "GET",
     url: "data/brackets.xml",
     dataType: "xml",
     dataFilter: function (response) {
         response=response.substr(0,response.length-1);
         return response;
     },
     success: parseXml

 });
于 2012-08-21T16:04:42.980 回答