Extjs5:表单提交错误的回调

时间:2014-12-19 14:43:07

标签: forms submit extjs5

我在提交Extjs5表单(编辑任务)后尝试回调 任务已更新,服务器返回Successfull结果,但当我尝试获取提交操作的反馈时,它返回失败

Extjs Form

Ext.create("Ext.form.Panel", {
            layout: "anchor",
            reference: 'editTaskForm',
            jsonSubmit: true,
            url: "tasks/tasks/edit",
            defaults: {
                anchor: '100%'
            },
            defaultType: 'textfield',
            items: [
                {
                    fieldLabel: 'Task Name',
                    name: 'taskID',
                    value: me.taskObject.get("taskID"),
                    hidden: true
                },
                {
                    fieldLabel: 'Task Name',
                    name: 'taskName',
                    value: me.taskObject.get("taskName"),
                    allowBlank: false
                },
                {
                    fieldLabel: 'Task priority',
                    name: 'taskPriority',
                    value: me.taskObject.get("taskPriority"),
                    allowBlank: false
                },
                {
                    fieldLabel: 'Task status',
                    name: 'taskStatus',
                    value: me.taskObject.get("taskStatus"),
                    allowBlank: false
                },
                {
                    xtype: 'textarea',
                    fieldLabel: 'Task Description',
                    name: 'taskDescription',
                    value: me.taskObject.get("taskDescription"),
                    allowBlank: false
                }
            ],
            buttons: [
                {
                    text: 'Reset',
                    handler: function () {
                        this.up('form').getForm().reset();
                    }
                },
                {
                    text: 'Submit',
                    formBind: true,
                    disabled: true,
                    handler: "onTaskCreateOrUpdate"
                }
            ]
        })

提交功能

form.submit({
            success: function (form, action) {
                var result = action.result;
                console.dir(result);
            },
            failure: function (form, action) {
                switch (action.failureType) {
                    case Ext.form.action.Action.CLIENT_INVALID:
                        Ext.Msg.alert('Failure', 'Form fields may not be submitted with invalid values');
                        break;
                    case Ext.form.action.Action.CONNECT_FAILURE:
                        Ext.Msg.alert('Failure', 'Ajax communication failed');
                        break;
                    case Ext.form.action.Action.SERVER_INVALID:
                        Ext.Msg.alert('Failure', action.result.msg);
                }
            }
        });

Javascript控制台和服务器控制台中没有错误

你能帮帮我吗?

谢谢

1 个答案:

答案 0 :(得分:0)

服务器响应必须类似于:

{ success: true }

这是一个显示这个工作的小提琴:

https://fiddle.sencha.com/#fiddle/fc6

如果您在故障处理程序中添加了一些日志记录,您应该会看到它正在被调用...