使用見Flask(python)異步(ajax)返回json格式數據html
①.$.getJSONpython
$.getJSON()是專門爲ajax獲取json數據而設置的,而且支持跨域調用,其語法的格式爲:ajax
getJSON(url,[data],[callback])json
$.getJSON("{{ url_for('form_data') }}",params, function (result) {
$("#myDiv").append("hello world1"); console.log(obj.username + "<br>"); });
②.$.ajax跨域
$.ajax
是 jQuery 底層 AJAX 實現,$.ajax
是一種通用的底層封裝,$.ajax(
)請求數據以後,則須要使用回調函數,有beforeSend、error、dataFilter、success、complete等。服務器
格式:session
$.ajax({
url:」路徑」,
type:」post/get」,
datatype:」json」, //成功的回調函數 success:function(data){ alert(「回調函數成功了」); }, //失敗的回調函數 error:function(){ alert(「服務器請求失敗」); }, //發送請求前調用,能夠放一些「正在加載」之類的話 beforeSend:function(){ alert(「正在加載」); } });
例如:app
$.ajax({
"url": "{{ url_for('form_data') }}", "type": "POST", "data": params, "success": function (obj) { $("#myDiv").append("hello world") console.log(obj.username + "<br>") }, "error": function (obj) { console.log(obj) }, "dataType": "json", "async": true });
③.$.get異步
$.get
是簡單易用的高層實現,咱們使用$.get
方法,jQuery會自動封裝調用底層的$.ajax
。async
$.get
只處理簡單的 GET 請求功能以取代複雜 $.ajax
,請求成功時可調用回調函數。不支持出錯時執行函數,不然必須使用$.ajax
。
$.get( url ,[data] ,[callback] )
例如:
$.get("{{ url_for('form_data') }}", params, function (obj) {
$("#myDiv").append("hello world") console.log(obj.username + "<br>"); }, "json");
④.$.post
$.post
是簡單易用的高層實現,咱們使用$.post
方法,jQuery會自動封裝調用底層的$.ajax
。
$.post
只處理 post請求功能以取代複雜 $.ajax
。請求成功時可調用回調函數。不支持出錯時執行函數,不然必須使用$.ajax
。
$.post(url,[data],[callback],[type])
這個方法和$.get()用法差很少,惟獨多了一個type參數,那麼這裏就只介紹type參數吧,其餘的參考上面$.get()的。
例如:
$.post("{{ url_for('form_data') }}", params, function (obj) {
$("#myDiv").append(obj.username + "<br>") console.log(obj); }, "json");