2010-05-26 87 views
19

我是一個有extJS和json的新手。使用extJS發佈json數據最無痛的路線是什麼?我沒有真正感興趣的任何GUI功能,只是使用框架發送一些示例數據。如何使用extJS發佈json數據

回答

24
Ext.Ajax.request({ 
    url: 'foo.php', // where you wanna post 
    success: passFn, // function called on success 
    failure: failFn, 
    params: { foo: 'bar' } // your json data 
}); 
+0

哇哦,那是比我預想的要容易得多。謝謝!!!!! – maximus 2010-05-27 04:56:30

+22

這會發布URL編碼的數據...... IOW,POST緩衝區將是foo = bar。如果你替換'jsonData'的'params',它會發布原始的JSON,所以POST緩衝區將會是'{「foo」:「bar」}' – SBUJOLD 2010-05-27 12:48:32

+0

在ExtJS 4.1中,你可以使用jsonData成員。 – Chris 2012-07-03 13:11:02

3

這裏發佈的例子顯示了基本思想。有關所有可配置選項的完整詳細信息,請參見Ext.Ajax docs

+0

鏈接已損壞,必須導航到EXT.Ajax部分 – oden 2014-07-14 05:36:09

6

我想補充我的兩分錢:

// 
//Encoding to JSON: 
// 
var myObj = { 
    visit: "http://thecodeabode.blogspot.com/" 
}; 
var jsonStr = Ext.encode(myObj); 


// 
// Decoding from JSON 
// 
var myObjCopy = Ext.decode(jsonStr); 
document.location.href = myObj.visit; 
19

下面將標識爲「POST的要求

Ext.Ajax.request({ 
     url: 'foo.php', // where you wanna post 
     success: passFn, // function called on success 
     failure: failFn, 
     jsonData: { foo: 'bar' } // your json data 
    }); 

下面將標識爲」GET的要求

Ext.Ajax.request({ 
    url: 'foo.php', // where you wanna make the get request 
    success: passFn, // function called on success 
    failure: failFn, 
    params: { foo: 'bar' } // your json data 
}); 
+1

您還可以使用'method:'POST'/'GET'參數:http://docs.sencha.com/extjs/4.1.3/#! /api/Ext.Ajax-property-method – efirat 2013-06-25 16:22:21

0

代碼段:

Ext.Ajax.request({ 
    url: "https://reqres.in/api/users", 
    success: function (response) { 
     Ext.Msg.alert("success", response.responseText); 
    }, 
    failure: function() { 
     Ext.Msg.alert("failure", "failed to load") 
    }, 
    params: { 
     "name": "morpheus", 
     "job": "leader" 
    } 
}); 

小提琴:https://fiddle.sencha.com/#view/editor&fiddle/28h1