Ext 資料提交的方式總結,
Ext 給後臺提交資料,提交資料有三種方法,注意使用前兩種,我也是隻用全兩種
(第一種):使用 Form 的父類 basicForm 的submit(Object option )方法,
這個方法的使用要求:
myFormPanel.getForm().submit({
clientValidation: true,
url: 'updateConsignment.php',
params: {
newStatus: 'delivered'
},
success: function (form, action) {
Ext.Msg.alert('Success', action.result.msg);
},
failure: function(form, action) {
switch (action.failureType) {
case Ext.form.Action.CLIENT_INVALID:
Ext.Msg.alert('Failure', 'Form fields may not be submitted with invalid values');
break;
case Ext.form.Action.CONNECT_FAILURE:
Ext.Msg.alert('Failure' , 'Ajax communication failed');
break;
case Ext.form.Action.SERVER_INVALID:
Ext.Msg.alert('Failure', action.result.msg);
}
}
});
引數介紹: url :提交的 web 頁面路徑
params: 需要傳遞給後臺頁面的引數,如果沒有引數,可以省略
success: 資料處理成功後執行的操作
failure : 資料處理失敗後執行的操作,
我的程式例子:
var baseForm = companyFormPaenl.getForm();
if (baseForm.isValid()) {
//彈出效果
Ext.MessageBox.show({
msg: '正在儲存,請稍等...',
progressText: 'Saving...',
width: 300,
wait: true,
waitConfig: { interval: 200 }
});
baseForm.submit({
url: "URL/CompanyInfo/SaveCompanyInfo.aspx",
method: "POST",
success: function(form, action) {
var flag = action.result.success;
if (flag == true) {
Ext.MessageBox.alert("恭喜", "公司儲存成功!");
}
},
failure: function(form, action) {
Ext.MessageBox.alert("提示!", "公司儲存失敗!");
}
});
}
(第二種方式):使用 Ext.Ajax.request(Object option )提交資料
這個方法的使用要求:
Ext.Ajax.request({
url: 'ajax_demo/sample.json',
success: function(response, opts) {
var obj = Ext.decode(response.responseText); console.dir(obj);
},
failure: function(response, opts) {
console.log('server-side failurewith status code ' + response.status); }
});
引數介紹:
url: 傳送的URL
params: 一個包含屬性的物件,他被用作請求的引數
method: Http 請求的方式,GET 或者 POST
callback: 一個自定義的回撥函式
success:function(response,options),當請求成功時呼叫的方法
failure:function(response,options) ,當請求失敗是呼叫的方法,
(其他引數: Scope ,timeout ,form ,isUpload)引數很少用
我的程式程式碼:
Ext.Ajax.request({
url: "URL/CompanyInfo/DeleteCompanyInfo.aspx",
method: "POST",
params: { id: Ext.get("hidCompanyId").dom.value },
success: function(response, options) {
var jsonObj = Ext.decode(response.responseText);
if (jsonObj.success == true) {
}
Ext.Msg.alert("提示", jsonObj.msg);
},
failure: function(response, options) {
Ext.Msg.alert("提示", "刪除失敗");
}
});
(第三種方法:)將方法載入路徑後面: