關于Ajax的疑難雜癥詳解
跨域問題
如圖所示,這是通過jquery封裝的ajax請求了一個本地的php文件(無框架),console提示CORS策略已阻止“來自來源”的“null”:請求的資源上不存在“訪問控制允許來源”標頭。
解決方案
設置header頭
header("Access-Control-Allow-Origin: *");
允許所有域名請求
header("Access-Control-Allow-Origin: http://127.0.0.1");
允許一個域名請求
<?php header("Access-Control-Allow-Origin: *"); function index(){ sleep(2); return json_encode(['code'=>8888888]); } echo index(); ?>
請求成功進error問題
這多半是因為你要求返回的是json格式的數(shù)據(jù),但實際返回的數(shù)據(jù)不是正確的json數(shù)據(jù)
<script> var data = { parent:1 } $.ajax({ type: "POST", url: "http://127.0.0.1", dataType:'json', success: function (response,index,obj) { console.log(obj.done(function() { //延遲請求成功后的回調 alert("$.get succeeded"); })); console.log(index); //log success console.log("成功",response); //請求成功返回的數(shù)據(jù) }, error(res){ console.log("失敗",res); } }); </script>
Ajax的第一個字母是asynchronous的開頭字母,這意味著所有的操作都是并行的,完成的順序沒有前后關系。$.ajax()的async參數(shù)總是設置成true,這標志著在請求開始后,其他代碼依然能夠執(zhí)行。強烈不建議把這個選項設置成false,這意味著所有的請求都不再是異步的了,這也會導致瀏覽器被鎖死。
總結
到此這篇關于Ajax的疑難雜癥的文章就介紹到這了,更多相關Ajax疑難雜癥內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
關于ajax對象一些常用屬性、事件和方法大小寫比較常見的問題總結
最近比較空閑,于是抽個時間整理些關于ajax方法的東東。在項目中經(jīng)常發(fā)現(xiàn)ajax板塊好多問題都是屬性,方法,事件大小寫不區(qū)分問題,最終導致了程序運行出現(xiàn)麻煩,下面給大家介紹關于ajax對象一些常用屬性、事件和方法大小寫比較常見的問題總結2015-10-10Jquery基于Ajax方法自定義無刷新提交表單Form實例
這篇文章主要介紹了Jquery基于Ajax方法自定義無刷新提交表單Form的方法,結合實例詳細分析了Ajax無刷新提交表單的完整實現(xiàn)過程,并總結了使用中的注意事項,具有很好的借鑒價值,需要的朋友可以參考下2014-11-11