从IE8中的jQuery .ajax返回的空XML文本节点

时间:2014-10-16 00:50:54

标签: jquery ajax internet-explorer-8

我正在尝试从ajax查询XML结果中提取字符串。 这在IE9中完美运行,但在IE8中,包含该字符串的文本节点为空。 我已经尝试将dataType更改为文本,并且看到了这种情况。 我还验证了返回的mime类型是text / xml。

这是我的功能文本:

$.ajax({
    url: myURL,
    cache: false,
    data: myData,
    type: "post",
    dataType: "XML",
    success: function(xmlData) {
        Result=$(xmlData).find("Output").text();
    }
});

这是responseXML的结构:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Rowsets ... >
    <Rowset>
        <Columns>
            <Column ... />
        </Columns>
        <Row>
            <Output>
                *string to be extracted*
            </Output>
        </Row>
    </Rowset>
</Rowsets>

在IE8中,节点为空。在IE9中,它包含字符串数据。我的应用程序要求我支持这两种浏览器。如何在IE8和IE9中检索我的数据?

1 个答案:

答案 0 :(得分:0)

我发现问题出在myData中,数据是提供给服务器的。由于它由HTML代码组成,IE8和IE9以不同方式对其进行格式化,从而导致处理错误。

感谢任何阅读此内容的人。