Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.03.2013, 09:40
Новичок на форуме
Отправить личное сообщение для Danirk Посмотреть профиль Найти все сообщения от Danirk
 
Регистрация: 06.03.2013
Сообщений: 2

Store сохранение изменений в БД
ExtJS+jsp

В jsp загружаю js файлик.

var ds_= new Ext.data.Store({
baseParams:{id:0},
url: 'res/ds.jsp',
reader: new Ext.data.JsonReader(

}
});
Ext.EventManager.on(window, 'load', function() {
ds_.load({params:{id:1}, callback:onError});
var colmod = new Ext.grid.ColumnModel({

};
var grid_ = new Ext.grid.GridPanel({
id:'grid_',
frame:true,
store: ds_,
layout: 'fit',
loadMask:true,
autoScroll: true,
colModel: colmod,
height:240,
title:Name,
selModel: new Ext.grid.CellSelectionModel({
listeners: {
beforecellselect:
function (sm, rowIndex, colIndex) {
var record = grid_.getStore().getAt(rowIndex);
record.set('Pole','1');
}
}
})
});
var isForm = new Ext.form.FormPanel({
title: 'Титл',
width:630,
id:'isForm',
items: [
grid_
],
buttons:
[
{
text: 'Сохранить',
handler: function() {
isForm.getForm().submit({
url: 'res/submit.jsp',
waitMsg: 'Сохраняем...',
method:'POST',
success: function(isForm, o) {
Ext.Msg.show({
title:'Сообщение',
msg: 'Успешно сохранено.',
buttons: Ext.Msg.OK,
fn: function(btn, text) {
if (btn == 'ok') {
window.returnValue = 1;
window.close();
}
}})
},
failure:function(form, action) {
Ext.Msg.alert('Ошибка записи данных', action.result.errors);
}
});
grid_.getStore().commitChanges();
}
},
{
text: 'Отмена',
handler: function() {
window.close();
}
}
]
});
isForm.render('panels-all');
}

Так естественно Store не передается. Что не хватает?
И что написать в submit.jsp в плане приема Store?
Ответить с цитированием
  #2 (permalink)  
Старый 06.03.2013, 09:56
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Danirk
Что не хватает?
Форматирования кода?
Ответить с цитированием
  #3 (permalink)  
Старый 06.03.2013, 10:58
Новичок на форуме
Отправить личное сообщение для Danirk Посмотреть профиль Найти все сообщения от Danirk
 
Регистрация: 06.03.2013
Сообщений: 2

var ds_ = new Ext.data.Store({
    baseParams:{id:0},
    url: 'res/ds.jsp',
    reader: new Ext.data.JsonReader(....)
});
Ext.EventManager.on(window, 'load', function() {
    ds_.load({params:{id:1}, callback:onError});
    var colmod = new Ext.grid.ColumnModel({...});
    var grid_ = new Ext.grid.GridPanel({
        id:'grid_',
        frame:true,
        store: ds_,
        layout: 'fit',
        loadMask:true,
        autoScroll : true,
        colModel: colmod,
        title:Name,
        selModel : new Ext.grid.CellSelectionModel({
            listeners: 
            {
                beforecellselect:
                        function (sm, rowIndex, colIndex) 
                        {
                            var record = grid_month.getStore().getAt(rowIndex);
                            record.set('Pole','Новое значение');
                        } 
            }                   
        })
    });
    var isForm = new Ext.form.FormPanel({
        title: 'Титл',
        id:'isForm',
        items: [
            grid_
        ],
        buttons:
                [
                    {
                        text: 'Сохранить',
                        handler: function() {
                            // Тут надо вписать отправление JSON на страницу commit.jsp
                        }
                    },
                    {
                        text: 'Отмена',
                        handler: function() {
                            window.close();
                        }
                    }
                ]
     });
    isForm.render('panels-all');
});
function onError(r, options, success) {
    if (!success) {
        Ext.Msg.alert('Ошибка', 'Ошибка загрузки данных на форму');
    }
};
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ExtJS4 Обход store pauluss ExtJS 4 14.01.2013 14:25
Сохранение изменений в бд с использованием ajax o2318489 AJAX и COMET 1 28.10.2012 17:31
Данные из store не успевают попадать в chart kalya ExtJS 0 02.11.2011 14:14
GridPanel "теряет" свой store при многократном вызове экземпляров GridPanel Lokich ExtJS 1 09.09.2011 10:12
сохранение изменений Titanic jQuery 3 24.07.2011 21:18