$form['elem'] =
array (
'#type' =
> 'value',
'#value' =
> array(t('Первый'),
t('Второй'),
t('Третий'))
);
$form['your_elem'] = array (
'#title' => t('Выберите элемент:'),
'#type' => 'select',
'#options' => $form['elem']['#value']
);
$form['print_your_elem']['#markup']=t('Ваш элемент:');
Подскажите, как сделать, чтобы в последней строке после "Ваш элемент:" выводилось название выбранного элемента.
Комментарии
http://xandeadx.ru/blog/drupal/319
http://internetdevels.ru/blog/drupal-states
А как достать значение из value?
Я пишу $form['your_elem']['#options']
а он мне цифру массива выдает ))) 0, 1 или 2
ваш $form['elem'] не нужен в данном случае. Этот тип формы служит как скрытое поле и передаёт любое значение в вашу сабмит функцию (сабмит функция не принимает аргументы)
$form['your_elem'] = array (
'#title' => t('Выберите элемент:'),
'#type' => 'select',
'#options' => array('Option 1', 'Option 2'),
);
В сабмит и валидат функцию проходят ключи массива #options - т.е 0 и 1, если других не указано (например array('opt1' =>'Option 1', 'opt2' => 'Option 2'))
Решил как посоветовал volocuga@drupal.org
'#options' => array('Первый' => 'Первый', 'Второй' => 'Второй'),
теперь всесто непонятных "0" и "1", все понято - "Первый" или "Второй"