デフォルトではFormPanel
、ExtJS 3.1.0のaはapplication/x-www-form-urlencoded
、submit()関数を呼び出すときと同じようにフォームフィールドを投稿します。
代わりにJSONを投稿する方法はありますか?
を使用getValues()
して値を取得してから値を取得し、このデータをExt.encode()
手動で使用することもできます。Ext.Ajax.request({})
おそらくExt.form.Action.Submit
、パラメータを本文でURLエンコードするのではなく、JSONとしてエンコードするように拡張する必要があります。
をオーバーライドできますExt.form.Action.Submit.run
。
ちょうどこのような:
Ext.override(Ext.form.Action.Submit, {
run: function() {
// Your code here
}
});
パラメータを入力するだけです
var formData = App.formPanel.getValues(false);
Ext.net.DirectMethod.request({
url: '/Product/Save',
params: formData,
success: function(jsonResult){
}
});
また
App.formPanel.submit();
設定する前にApp.formPanel.url = '/Product/Save'