2013-10-24 3 views
0

Как вы прикрепляете скрытые элементы или значения таких массивов формируются с помощью hook_form_alter?hook_form_alter, добавить скрытые элементы, такие как массив

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

+0

Как добавить ключ или значение? Какая у вас ошибка? Показать код. – Oswald

+0

Возможно, было бы неплохо пометить вопрос с помощью версии drupal, которую вы используете. – Cyclonecode

+0

@KristerAndersson API Forms и 'hook_form_alter' не изменились в этом отношении, поскольку Drupal 6 и, насколько я могу судить, не изменится и в Drupal 8. – Oswald

ответ

0

Что-то, как это должно работать:

function sample_module_form_alter(&$form, &$form_state, $form_id) { 
    if ($form_id == 'FORM-ID') { 
    $form['sample_module_hidden_field'] = array(
     '#type' => 'hidden', 
     '#value' => 'your-value', 
    ); 
    $form['#submit'][] = 'sample_module_form_submit'; 
    } 
} 

function sample_module_form_submit($form, &$form_state){ 
    $values = $form_state['values']; 

    // store the value from the hidden field 
    if(!empty($values['sample_module_hidden_field'])){ 
     variable_set('sample_module_hidden_field', $values['sample_module_hidden_field']); 
    } 
} 

Вы должны изменить FORM-ID к идентификатору формы вы хотели бы изменить. Кроме того, конечно, вы должны изменить имя и значение поля.

Это также должны прочитать: Form API Reference

Смежные вопросы