[英]How to post extjs data from form to server?
我已經了解了如何從服務器到應用程序獲取數據。 現在我面臨着POST任務。 我有表單,並希望通過單擊按鈕將字段數據發布到服務器。
我試圖用這個:
{//some controllercode
xtype: 'button'
text: 'save',
ui: 'confirm',
scope: this,
handler: function() {
Ext.Ajax.request({
url:'/api/renter/',
method: 'POST',
params: {
ReplaceAllRefs: true
}
})
}
}
Ext.Ajax的參數定義了將通過url發布到服務器的數據? 我可以將此類用於POST任務,還是不是最好的方法?
如果要發布表單數據,可以使用form.submit
方法代替Ext.ajax
..
var form = your_form_panel.getForm();
if(form.isValid()){ //isValid() will validate all your form fields
form.submit({
url : '/api/renter/',
params: params, //additional parameters can be send in object
success: function(form, o){
},
failure: function(form, o){
}
});
}
看看Ext.Ajax.request的ExtJs文檔中的jsonData
選項。
jsonData:對象/字符串
用作發布的JSON數據。 注意:這將用於代替post數據的參數。
任何參數都將附加到URL。
所以您的Ajax請求應該看起來像
Ext.Ajax.request({
url:'/api/renter/',
method: 'POST',
jsonData: {
ReplaceAllRefs: true
}
});
當您想提交GET和POST數據時,可以使用params
和jsonData
。
Ext.Ajax.request({
url:'/api/renter/',
method: 'POST',
params: {
someGetParam: 'value'
},
jsonData: {
ReplaceAllRefs: true
}
});
最后,我使用了以下代碼塊:
{ text: 'save', ui: 'confirm', handler: function() { var dataup3 = this.up().items.items[0]; //get form's fields level var dataSet3 = dataup.getValues(); Ext.Ajax.request({ url:'/api/cutarea/', method: 'POST', params: dataSet3 }) } }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.