Jquery Ajax方法兼容問題小記。

訪問簡要格式:

 $.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) { });

你可能感兴趣的:(Jquery Ajax方法兼容問題小記。)