首页 > 解决方案 > 如何在 ExtJs 中集成 java api

问题描述

我是 ExtJs 的新手,我正在尝试集成 java API 以在 extJs 中保存记录,但它给出了错误。IE

Ext.form.Basic.updateRecord():需要记录。请查看我的代码详情

onSaveClick: function (button) {
       
        var dialog, record, store;
        dialog = button.up('window').down('form');
        dialog.updateRecord();
        record = dialog.getRecord();
        
        if (record === trac.app.getUser()) {
            record.save();
        } else {
            store = Ext.getStore('Routes');
            if (record.phantom) {
                store.add(record);
            }
            store.sync({
                failure: function (batch) {
                    store.rejectChanges();
                    trac.app.showError(batch.exceptions[0].getError().response);
                }
            });
        }
        button.up('window').close();      
    }

标签: javascriptextjs

解决方案


首先获取记录,然后将其用作 dialog.updateRecord 的参数:

onSaveClick: function (button) {

    var dialog, record, store;
    dialog = button.up('window').down('form');
    record = dialog.getRecord();
    dialog.updateRecord(record);

    if (record === trac.app.getUser()) {
        record.save();
    } else {
        store = Ext.getStore('Routes');
        if (record.phantom) {
            store.add(record);
        }
        store.sync({
            failure: function (batch) {
                store.rejectChanges();
                trac.app.showError(batch.exceptions[0].getError().response);
            }
        });
    }
    button.up('window').close();      
}

推荐阅读