3

默认情况下,ExtJS 3.1.0 中的 a在您调用它的 submit() 函数时FormPanel发布表单字段。application/x-www-form-urlencoded

有没有办法让它发布 JSON 呢?

4

4 回答 4

3

您可以使用getValues()先提取值,然后再提取Ext.encode()它们并手动Ext.Ajax.request({})处理这些数据。

于 2010-02-04T18:19:19.897 回答
2

您可能希望扩展Ext.form.Action.Submit以将参数编码为 JSON,而不是在正文中对它们进行 url 编码。

于 2010-02-04T18:05:31.530 回答
1

您可以覆盖Ext.form.Action.Submit.run.

像这样:

Ext.override(Ext.form.Action.Submit, {
    run: function() {
        // Your code here
    }
});
于 2010-11-14T06:20:59.667 回答
0

只需输入参数

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'

于 2014-11-27T12:00:11.960 回答