Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.11.2010, 16:23
Аспирант
Отправить личное сообщение для DenQ Посмотреть профиль Найти все сообщения от DenQ
 
Регистрация: 28.08.2010
Сообщений: 57

Не передается id группы, на сервер
Эх, братцы , наверно замучал я вас уже своими вопросами...
В общем дело такое, есть формочка, у ней есть поле/я в виде комбобокса, из сторы нам приходят такие поля как 'id' & 'name_group'. Для показа name_group 'мы' используем displayValue, а для отправки id`шника valueField. Но на сервер уходят только текстовые значения(название группы), а нужно чтобы ее id.
Вот такая вот проблемка. Я думаю многие из вас сталкивались с подобной уже, и надеюсь на вашу помощь...
Ниже привожу код:
{
                            border          : true,
                            xtype           : 'combo',
                            store           : getStore('group_disk'),
                            mode            : 'local',
                            valueField      : 'id',
                            displayField    : 'name_group',
                            triggerAction   : 'all',
                            fieldLabel      : 'Группа диска',
                            allowBlank      : false,
                            name            : 'GROUP_DISK'
                        },
Ответить с цитированием
  #2 (permalink)  
Старый 15.11.2010, 20:54
VKS VKS вне форума
Профессор
Отправить личное сообщение для VKS Посмотреть профиль Найти все сообщения от VKS
 
Регистрация: 24.09.2010
Сообщений: 178

Вообщем это типичный баян, используй
hiddenName : String

If specified, a hidden form field with this name is dynamically generated to store the field's data value (defaults to the underlying DOM element's name). Required for the combo's value to automatically post during a form submission. See also valueField.
Ответить с цитированием
  #3 (permalink)  
Старый 16.11.2010, 07:36
Аспирант
Отправить личное сообщение для DenQ Посмотреть профиль Найти все сообщения от DenQ
 
Регистрация: 28.08.2010
Сообщений: 57

VKS, наверное ты меня неверно понял. Мне не нужно что бы имя поля изменилось, мне нужно чтобы содержимое отправлялось, не то что мы видим, а id его из сторы.
т.е. если в комбобокс приходит массив вида
id, name_group
1, 'qwe',
2, 'wer',
3, 'ert'
то,
При выборе варианта(а пользователь будет видеть только 'qwe', 'wer', 'ert'), на сервер будет отправляться id(1,2 или 3), соответствующий данному тексту.
т.е. если я выбрал 'wer', то на сервер отправится число 2. Ловить на сервере это дело будем так $_REQUEST['GROUP_DISK'], и там должно быть наше число...

Проблема в том как раз что отправляется не число, а текстовое значение.
ЗЫ. извиняюсь за дотошность...
Ответить с цитированием
  #4 (permalink)  
Старый 16.11.2010, 10:37
VKS VKS вне форума
Профессор
Отправить личное сообщение для VKS Посмотреть профиль Найти все сообщения от VKS
 
Регистрация: 24.09.2010
Сообщений: 178

When you use Ext JS’s ComboBox, if you don’t set hidden name or id, it send display field value, not value field. To handle this, it has to be set. Be careful about uniqueness of the hidden name, for more details you can check Ext JS ComboBox’s documantation

var unitField = new Ext.form.ComboBox({
    id:'unitField',
    name: 'unit',
    fieldLabel: 'Unit',
    store:unitStore,
    mode: 'remote',
    displayField: 'name',
    valueField: 'id',
    hiddenName : 'unitId',
    allowBlank: false,
    anchor:'95%',
    triggerAction: 'all'
});
Ответить с цитированием
  #5 (permalink)  
Старый 16.11.2010, 18:03
Аспирант
Отправить личное сообщение для DenQ Посмотреть профиль Найти все сообщения от DenQ
 
Регистрация: 28.08.2010
Сообщений: 57

VKS, да это наверное все же мои палки. Спасибо за помощь!
Мне сейчас просто некогда толком вникать в документацию. Как бы это не звучало парадоксально, но это так. Вот и получается что вопросов много, да еще и ответы не сразу доходят. Вот проект доделаю, тогда вникну полностью. К тому же логика уже построена, фундамент заложен, все самое трудное позади, так что уже скоро
Вот так я сделал:
{
                            hiddenName      : 'GROUP_DISK',
                            xtype           : 'combo',
                            store           : getStore('group_disk'),
                            mode            : 'local',
                            valueField      : 'id',
                            displayField    : 'name_group',
                            triggerAction   : 'all',
                            fieldLabel      : 'Группа диска',
                            allowBlank      : false,
                            name            : 'GROUP_DISK'
                        },


ЗЫ. Жаль что на плюсик не получается нажать...

Последний раз редактировалось DenQ, 16.11.2010 в 18:06.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не отправляются на сервер данные из клонированных полей Dark jQuery 1 02.04.2010 19:53
Динамические select'ы не передают значения на сервер Igor2001 Элементы интерфейса 5 23.08.2009 15:03
записать массив байт на сервер karabura AJAX и COMET 1 06.08.2009 05:21
как при добавлении изображения на сервер считывать имя в БД? solomusic Серверные языки и технологии 3 12.06.2008 23:28