Jquery Ajax方法兼容問題小記。

本文介绍了解决Ajax在不同浏览器中遇到的问题,包括Firefox无法获取返回值及IE6下XML返回值处理不当的情况,并提供了相应的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

訪問簡要格式:

 $.ajax({
        type: "POST",
        url: "http://172.99.99.99:999/xxxxxxxxxx.asmx/xxxxxx",
        data: "userNoList=" + obj,
        dataType: "xml", 
        success: function(result, status) {//you function },
        error: function(result, status) { alert(result.responseText);
        }
    }); 

1.Firefox瀏覽器無法獲取返回值。

解法:在dataType和success之間增加參數data:'', 增加后Ajax中會有2個data參數,FF下可正常訪問。具體原因未作深入分析。(參考地址:http://diandianhe.iteye.com/blog/575869)

2.IE6下面XML返回值為XML字符流,而不自動生成XML DOC對象。(此處可能我理解有誤,但是表現出來的確實是對xml的分析中無法使用find函數,)

解法:在Success的function中,用返回的result.xml生成一個XMLDOC對象,格式如下:

       var xml;
                //因IE6下對於Jquery Xml解析有區別,需要重新生成XMLDOC對象
               if (typeof result.xml == "string") {
                    xml = new ActiveXObject("MSXML2.DOMDocument");
                    xml.async = false;
                    xml.loadXML(result.xml.replace(/&lt;/g, "<").replace(/&gt;/g, ">"));
                } else {
                    xml = result.xml;
                }  
                $(xml).find("Table").each(function(index) { });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值