使用jQuery 2.0.0的MIME类型

时间:2013-04-22 13:15:02

标签: jquery xml internet-explorer mime

我有以下代码来解决IE本地访问XML问题:

    $.ajax({
        type: "GET",
        url: options.xmlUrl,
        dataType: ($.browser.msie) ? "text" : "xml",
        success: function(data) {wrapTree(data);},
        error:function(){alert(options.loadingError);}
    });

由于$ .browser,它无法使用jQuery 2.0.0。 http://docs.jquery.com/Specifying_the_Data_Type_for_AJAX_Requests的建议不再有效。任何人都知道如何适应jQuery当前版本的运行?

2 个答案:

答案 0 :(得分:2)

只需对所有情况使用dataType: "text",然后在成功处理程序中使用data = $.parseXML(data)将其转换为所有浏览器上的XML。

答案 1 :(得分:0)

自v1.9以来,jQuery中已删除$.browser功能,并且不推荐使用该功能,不建议在v1.3之前使用。他们建议使用功能检测来代替大多数用例而不是浏览器检测。

鉴于多久以前$.browser功能已被弃用,如果jQuery页面建议使用它,那么该页面可能也很老 - 事实上,很可能新版本的jQuery不能使用根本不需要这个黑客。你试过把它完全抛弃吗?

如果确实需要它,您可以使用jQuery migrate library,它会放回从v1.9开始删除的所有已删除的功能,包括$.browser。< / p>

但是,如果可能的话,我建议尝试找到一个不涉及此功能的解决方案,因为迁移库旨在解决短期升级问题,而不是长期解决方案; jQuery在将来的版本中可能不支持它。

我还要说,既然你正在使用jQuery 2.0,你应该注意到这个版本放弃了对IE v6,7和8的支持。如果你需要支持旧的IE版本,你需要坚持使用jQuery 1.x的更重要的是,如果您坚持使用v2.0,那么您只支持IE v9及更高版本。我不知道这个具体问题,但它可能只是旧IE版本中的一个问题,所以你可能根本不需要这个黑客。值得一试。

希望有所帮助。