Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.04.2012, 13:04
Интересующийся
Отправить личное сообщение для vadim.v Посмотреть профиль Найти все сообщения от vadim.v
 
Регистрация: 07.04.2012
Сообщений: 12

Валидация формы в контроллере
Есть контроллер

Ext.define('Admin.controller.Companies', {
    extend: 'Ext.app.Controller',
    stores: ['Companies','EmploerTypes'],
    models: ['Company'],
    views: [
    'company.List',
    'company.Edit'
    ],
    init: function () {
        this.control({
            'companyedit button[action=save]': {
                click: this.updateCompany
            }
        });
    },
.....
    editCompany: function (grid, record) {
        var view = Ext.widget('companyedit');
        view.down('form').loadRecord(record);
    },
    updateCompany: function (button) {
        var win = button.up('window'),
        form = win.down('form'),
        record = form.getRecord(),
        values = form.getValues(),
        store = this.getCompaniesStore();
        if (form.getForm().isValid()) {
            record.set(values);
            win.close();
        }
    }
});


и форма

Ext.define('Admin.view.company.Edit', {
    extend: 'Ext.window.Window',
    alias: 'widget.companyedit',
    title: 'Edit Company',
    width: 600,
    height: 370,
    layout: 'fit',
    modal: true,
    autoShow: true,
    
    initComponent: function () {
        this.items = [
        {
            xtype: 'form',
            bodyStyle: {
                background: 'none',
                padding: '10px',
                border: '0'
            },
            
            
            items: [...]
            }]
        }];
        
        this.buttons = [
        {
            text: 'Save',
            action: 'save'
        },
        {
            text: 'Cancel',
            scope: this,
            handler: this.close
        }
        ];
        this.callParent(arguments);
    }
});



При клике на Save формы надо проверить данные на сервере, как это сделать ?

UPD: Вроде решено

Последний раз редактировалось vadim.v, 09.04.2012 в 13:35.
Ответить с цитированием
  #2 (permalink)  
Старый 09.04.2012, 13:23
С++/C# modest developer
Отправить личное сообщение для nekto_O Посмотреть профиль Найти все сообщения от nekto_O
 
Регистрация: 07.11.2011
Сообщений: 244

Сообщение от vadim.v
как правильно сделать серверную валидацию в данном случае
Ну вероятно создать массив из соответствующих полей, и по каждому полю проверять правильность входных данных, только причем здесь метод isValid(), если он осуществляет валидацию формы на клиенте?
Ответить с цитированием
  #3 (permalink)  
Старый 09.04.2012, 13:37
С++/C# modest developer
Отправить личное сообщение для nekto_O Посмотреть профиль Найти все сообщения от nekto_O
 
Регистрация: 07.11.2011
Сообщений: 244

Сообщение от vadim.v
При клике на Save формы надо проверить данные на сервере, как это сделать ?
так для того чтобы на сервере проверить данные надо их сначала туда отправить)))
Ответить с цитированием
  #4 (permalink)  
Старый 09.04.2012, 13:58
Интересующийся
Отправить личное сообщение для vadim.v Посмотреть профиль Найти все сообщения от vadim.v
 
Регистрация: 07.04.2012
Сообщений: 12

да отправить это понятно, я сначала хотел хотел сделать чтобы без отправки данных через форму, чтобу через Store все шло, она все равно данные отправляет на запись если они меняются в таблице.

сделал обычным способом вот так валидацию

updateCompany: function (button) {
        var win = button.up('window'),
        form = win.down('form'),
        record = form.getRecord(),
        values = form.getValues(),
        store = this.getCompaniesStore();
        
        form.submit({
            clientValidation: true,
            params: {
                id: record.getId()
            },
            success: function(form, action) {
               Ext.Msg.alert('Success', 'Данные о компании обновлены!');
               record.set(values);
               win.close();
            }
            
        });
    }

Последний раз редактировалось vadim.v, 09.04.2012 в 14:20.
Ответить с цитированием
  #5 (permalink)  
Старый 09.04.2012, 15:36
С++/C# modest developer
Отправить личное сообщение для nekto_O Посмотреть профиль Найти все сообщения от nekto_O
 
Регистрация: 07.11.2011
Сообщений: 244

да, но вы же про серверную валидацию спрашивали))
Сообщение от vadim.v
надо проверить данные на сервере
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Внешняя валидация формы grego Events/DOM/Window 1 19.03.2012 23:03
Валидация полей формы на JS и сервере alex_89 Events/DOM/Window 9 04.12.2011 00:11
Валидация формы Mightyraven Ваши сайты и скрипты 37 03.12.2011 22:05
Валидация поля для отправки формы shkarbatov Javascript под браузер 3 25.07.2011 14:07
Валидация формы dmsuslov jQuery 4 05.11.2010 16:12