Добавить ajax-кнопку через form_alter

Главные вкладки

Аватар пользователя zheka2 zheka2 27 сентября 2015 в 9:14

Здравствуйте

Есть тип материала для формы которого надо добавить ajax кнопку при нажатии на которую производится некоторое автозаполнение формы.
В hook_form_alter добавил:

        $form['calc'] = array(
            '#type' => 'submit',
            '#value' => 'Рассчитать',
            '#weight' => 20,
            '#submit' => array('mymodule_calc_submit'),
            '#ajax' => array(
                'callback' => 'mymodule_calc_callback',
                'wrapper' => 'mywrapper',
            ),
        );

Callback вызывается, а submit нет, и форма тоже не перестраивается. Как правильно это реализовать?

Комментарии

Аватар пользователя zheka2 zheka2 27 сентября 2015 в 9:53

Нашёёёл...
'#limit_validation_errors' => array(),

При добавлении этого параметра к кнопке кнопка сначала сабмитится, далее перестроение формы ($form_state['rebuild'] = true) и в конце в колбеке возвращаем кусок формы для замены. Надо было сразу смотреть примеры мультистепформ