首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XMLSerializer在IE9可压缩模式下无法工作

XMLSerializer在IE9可压缩模式下无法工作
EN

Stack Overflow用户
提问于 2014-11-07 05:05:18
回答 2查看 545关注 0票数 1

我有这样的代码:

代码语言:javascript
复制
.... 
    jQuery(document).ready(function() {
        function showResponse(responseText, statusText, xhr, $form)  {
            var myxml = responseText;
            var serializer = new XMLSerializer(); 
            var xmltostring = serializer.serializeToString(myxml);

当IE9处于可压缩模式时,它在所有浏览器中都能正常工作,但IE9除外。出于不进入客户端的原因,我们需要在可压缩模式下运行IE9,因此我试图找到一个解决方案。

报告的错误是:

代码语言:javascript
复制
'XMLSerializer' is undefined 

有人知道怎么处理这件事吗?还有其他方法像XMLSerializer那样将DOM文档/对象转换为文本吗?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-10 00:49:32

最后做了这样的事情,似乎完成了任务:

代码语言:javascript
复制
var xmltostring='';

if (typeof window.XMLSerializer !== 'undefined') {
    var serializer = new XMLSerializer(); 
    xmltostring = serializer.serializeToString(myxml);
} else {
    if(window.ActiveXObject){
        xmltostring = myxml.xml;
    }
}
票数 0
EN

Stack Overflow用户

发布于 2014-11-07 06:26:11

由于兼容性模式可以模仿IE8和won行为,所以它无法工作。XMLSerializer工作在IE9和up (标准模式)中。另一种将DOM对象转换为字符串的方法是使用outerHTML

示例DOM:

代码语言:javascript
复制
var div = document.createElement('div');
div.innerHTML = '<p>testing 123</p>';

获取字符串表示形式:

代码语言:javascript
复制
div.outerHTML
//=> "<div><p>testing 123</p></div>"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26794439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档