Extjs 表格提交不';t回调

Extjs 表格提交不';t回调,extjs,extjs4,extjs4.2,Extjs,Extjs4,Extjs4.2,我有一个标准提交的表格 var formDettaglio = new Ext.form.FormPanel({ title: 'Dettaglio richiesta', renderTo: 'divDettaglio', url: '/supporto/gestioneDettaglio', standardSubmit: true, width: '100%', forceFit: true, layout: { t

我有一个标准提交的表格

var formDettaglio = new Ext.form.FormPanel({

    title: 'Dettaglio richiesta',
    renderTo: 'divDettaglio',
    url: '/supporto/gestioneDettaglio',
    standardSubmit: true,
    width: '100%',
    forceFit: true,
    layout: {
        type: 'vbox',
        align: 'stretch'
    },
    defaults: {
        border: false
    },
    margin: '0 0 15 0',
    items: [{
            layout: {
                type: 'hbox',
                align: 'stretch'
            },
            margin: '0 10 5 10',
            items: [{
                    xtype: 'combo',
                    fieldLabel: 'Prodotto/Servizio',
                    labelWidth: 100,
                    width: 450,
                    queryMode: 'local',
                    name: 'cbAssets',
                    store: storeAssets,
                    displayField: 'valore',
                    valueField: 'codice'
                }, {
                    flex: 1,
                    xtype: 'label',
                    text: ' '
                }, {
                    xtype: 'textfield',
                    fieldLabel: 'Data chiusura prev.',
                    labelAlign: 'right',
                    labelWidth: 120,
                    width: 250,
                    name: 'textDataPrevista',
                    readOnly: true
                }, {
                    xtype: 'textfield',
                    fieldLabel: 'Stato',
                    labelAlign: 'right',
                    labelWidth: 50,
                    width: 150,
                    name: 'textStato'
                }
            ]
        }, {
            xtype: 'textarea',
            fieldLabel: 'Motivo richiesta',
            labelWidth: 100,
            height: 150,
            margin: '0 10 5 10',
            name: 'textMotivo'
        }
    ],
    dockedItems: [{
            xtype: 'toolbar',
            padding: '2 0 2 0',
            dock: 'bottom',
            ui: 'footer',
            items: [{
                    xtype: 'tbfill'
                }, {
                    xtype: 'button',
                    text: 'Salva',
                    style: "width:100px; height:25px;",
                    handler: function () {
                        if (formDettaglio.getForm().isValid()) {
                            formDettaglio.getForm().submit({
                                params: {
                                    azione: 'SALVA'
                                },
                                success: function (form, action) {
                                    alert('ok');
                                },
                                failure: function (form, action) {
                                    alert('ko');
                                }
                            });
                        } else {
                            alert('Errore!');
                        }
                    }]
            }]
    });
我调用的函数,
/supporto/gestioneDettaglio
,发送一个json响应
{“成功”:true}

但是我的成功功能没有启动。我还尝试了firebug上的断点:不可能。 我得到了一张空白的纸,上面写着这个短语<代码>{“成功”:true}


我做错了什么?我发送JSON与我的应用程序中的任何其他响应一样。

您已将
standardSubmit
设置为true。如果要使用回调功能进行ajax提交,需要将
standardSubmit
属性设置为false。

使用“standardSubmit:false”解决 点击提交,我打了电话

Ext.Ajax.request({ url: '/supporto/gestioneDettaglio', 
    params: {azione: 'SALVA'},
    jsonData: { }, 
    form: 'formDettaglio', 
    method:'POST', 
    success: function(response, opts) { alert("successfull"); }, 
    failure:function(res,opt) { alert("request failed"); }
});
我不明白为什么没有“jsonData:{}”的Ajax请求没有传递参数。。。但是没关系。
谢谢

设置standardSubmit:false,我得到正确的服务器响应。但现在,我不明白为什么我的参数:{azione:'SALVA'},没有发送到服务器?!!?还尝试了Ext.Ajax.request({url:'/supporto/gestioneDettaglio',params:{azione:'SALVA'},form:'formDettaglio',method:'POST',success:function(response,opts){alert(“successfull”);},failure:function(res,opt){alert(“request failed”);});同样的问题:params不起作用。有什么建议吗???感谢我的Ext.Ajax.request,如上所述,行jsonData:{},现在参数被正确地发送到我的服务器。有人能解释吗?我想了解这个案子。。。谢谢。您可以使用原始示例,将standardSubmit设置为false,然后在表单上包含一个名为azione、值为“SALVA”的隐藏字段,它应该适合您