form: Как обернуть данные на отправку?
есть панель xtype: form
она отправляет данные с полей ajax результат отправки выглядит так: Код:
method: save - это свойство добавляется отдельно оно не входит в список полейКод:
method: saveсейчас заюзал вариант с getValues(false, true, false, true); при свойстве полей submitValue: false, но при этом формат даты отсылаемой на сервер всегда одинаков - 2012-12-21T00:00:00 так как getValues возвращает значение модели...:help: :help: :help: :help: :help: :help: :help: :help: Моё решение выглядит так:
...
onSaveButtonClick: function(button, e, eOpts){
button.disable();
var form = button.up('form');
modifyNames(form, true); // тупа меняем название name'ов на нужные... :(
form.submit({
scope: form,
url: '/action.php',
params:{
method:'save'
},
failure: function(form, action) {
modifyNames(this, false);
button.enable();
},
success: function(form, action) {
modifyNames(this, false);
button.enable();
}
});
function modifyNames(f, action){
f.getForm().getFields().each(function(item){
if(item.submitValue && item.name){
action ? wrapInData(item) : unwrapInData(item);
if(item.multiSelect){
action ? setAsArray(item) : unsetAsArray(item);
}
}
});
}
function wrapInData(field){
field.name = 'data[' + field.name + ']';
}
function unwrapInData(field){
field.name = /^data\[([\w\d]+)\]/.exec(field.name)[1];
}
function setAsArray(field){
field.name = field.name + '[]';
}
function unsetAsArray(field){}
},
...
|
я думаю как вы хотите врятли получится, либо отдельно аяксом
http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.Ajax |
Цитата:
|
что значит как работать? на оф сайте есть примеры.. самое элементарное можно понять вот ссылка:
http://docs.sencha.com/extjs/4.1.3/#...Ext.form.Panel вот там есть параметр name, вот чему намэ равен так и обращаться к нему на сервере (например get) ... name: 'myparam' ... $_GET['myparam'] |
про что вы говорите? я имел в виду api: http://docs.sencha.com/extjs/4.2.0/#....Basic-cfg-api
|
добавил своё решение "в лоб"...
|
| Часовой пояс GMT +3, время: 04:20. |