在我的项目中进行了一些更改后(更改甚至与xml解析部分无关),jquery.parseXML在firefox和chrome中停止工作(我没有尝试过其他浏览器)。
我甚至测试了非常简单的xml字符串
$.parseXML('<a>a</a>');
具有以下结果:
"Error: Invalid XML: <a>a</a>"
内部消息(由jquery捕获)如下:
"Failed to execute 'parseFromString' on 'DOMParser': The provided value 'text/dom' is not a valid enum value of type SupportedType."
这是由以下jquery代码行触发的:
tmp = new DOMParser();
xml = tmp.parseFromString( data, "text/dom" );
我真的不知道这是怎么可能的,因为我的更改与xml解析没什么关系。
如果我在没有jquery的情况下解析它并输入“application / xml”,它的工作原理,但为什么DOMParser之前接受“text / dom”类型?
修改
我通过bower(版本2.1.4)安装的jquery版本与官方版本不同:
我的版本:
xml = tmp.parseFromString( data, "text/dom" );
来自jquerySource:
xml = tmp.parseFromString( data, "text/xml" );
但它与旧版本一起工作了几个月。
解决方案: 所以我只是切换了jQuery文件及其工作,不知何故凉亭版本已经过时了。然而,这是一个奇怪的行为,我不知道为什么它以前工作,以及为什么它停止工作从一天到另一天。