本文實例講述了JQuery Ajax跨域調用和非跨域調用問題。分享給大家供大家參考,具體如下:
現在的互聯網技術發展的越來越快,我們在開發過程中遇到的問題也越來越多。比如當我們需要進行跨域訪問數據的時候該如何進行開發?本篇博文就記述如何使用Ajax進行跨域訪問調用數據。
1、非跨域調用
我們用到的最多是這樣的方式,也就是非跨域的進行訪問,只是簡單的在我們的網頁中進行Ajax使用即可。如下面代碼:
/*** 非跨域請求方式*/function feikuayu() { $.ajax({ type: "post", url: platformUrl + "/security/modifyPwd", data: $('#updatepwdform').serialize(), dataType: "json", success: function (data) { $("#updatepwd_btn").click(); $.toast("修改成功,系統即將退出,請重新登錄", 1500); }, error: function () { $.toast("網絡異常", 1500); } });}
2、跨域請求
在我們進行跨域請求時需要改變ajax固定參數:
dataType:"jsonp",
crossDomain:true,
jsonpCallback:"jsonpCallbackFun",
jsonp:"callback",
且后臺返回的數據格式必須是:jsonpCallbackFun(json數據); 這里的jsonpCallbackFun是你自定義的回調函數方法名。
代碼如下:
/*** 跨域請求方式*/function kuayu() { $.ajax({ type: "post", url: platformUrl + "/security/modifyPwd", data: params, dataType: "jsonp", crossDomain: true, jsonpCallback: "jsonpCallbackFun", jsonp: "callback", success: function (data) { if (data.result == 1) { $("#updatepwd_btn").click(); $.toast("修改成功,系統即將退出,請重新登錄", 1500); setTimeout("logout()", 1600); } else if (data.result == 2) { $.toast(data.msg, 1500); } else { $.toast("修改失敗", 1500); } }, error: function () { $.toast("網絡異常", 1500); } });}
這樣即可跨域請求了!
更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jquery中Ajax用法總結》、《jQuery擴展技巧總結》、《jQuery常用插件及用法總結》、《jQuery常見經典特效匯總》及《jquery選擇器用法總結》
希望本文所述對大家jQuery程序設計有所幫助。
新聞熱點
疑難解答