標籤:request err jsonp ashx pre log false head 解決
話不多說直接貼代碼:
$.ajax({ async: false, url: ‘http://****.****.com/Handler.ashx?vueId=iwNavpicS2‘, type: "GET", dataType: ‘jsonp‘, jsonp: ‘jsoncallback‘, data: null, timeout: 5000, beforeSend: function () { //jsonp 方式此方法不被觸發.原因可能是dataType如果指定為jsonp的話,就已經不是ajax事件了 }, success: function (result) {//用戶端jquery預先定義好的callback函數,成功擷取跨網域服務器上的json資料後,會動態執行這個callback函數 var data = 1; if (name == "iwHeader1") { result = JSON.stringify(result[0]); result = result.replace("[[", "[").replace("]]", "]"); result = "{\"" + name + "\"" + ":" + result + "}"; data = JSON.parse(result);//將字串轉化為json對象 } else { result = JSON.stringify(result);//將josn 轉化為字串 result = result.replace("[[", "[").replace("]]", "]"); result = "{\"" + name + "\"" + ":" + result + "}"; data = JSON.parse(result);//將字串轉化為json對象 //console.log(JSON.parse(result).iwHeader1[0]) } $("#val").val(data); }, complete: function (XMLHttpRequest, textStatus) { }, error: function (xhr) { //jsonp 方式此方法不被觸發.原因可能是dataType如果指定為jsonp的話,就已經不是ajax事件了 //請求出錯處理 alert("請求出錯(請檢查相關度網路狀況.)"); } });
注意,jquey是不支援post方式跨域的.
Jsonp 解決跨域問題