....................
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Send'),
'#ajax' => array('callback' => 'mymodule_form_ajax_callback'),
);
return $form;
}
function mymodule_form_submit($form, &$form_state) {
$email = variable_get('anfrage_email');
drupal_mail('system', 'mail', $email, language_default(), array(
'context' => array(
..................
)
));
drupal_set_message(t('Form submitted.'));
}
function mymodule_form_ajax_callback($form, &$form_state){
return array(
'#type' => 'ajax',
'#commands' => array(
ajax_command_html('#message', theme('status_messages')),
),
);
}
написал форму которая должна отрабатываться ajax.
$form = drupal_get_form('mymodule_form');
print drupal_render($form);
вот так я ее вывожу.
если вывожу в ноде или шаблоне views-view--page.tpl все нормально, но если вывожу в шаблоне views-view-fields--page.tpl форма отрабатывается как обычная без ajax.
форм с одним id нетю
как мне вывести форму именно в шаблоне полей? может не успевает подключиться какой-то скрипт
?
Комментарии
Да Ваша догадка верна, чтобы подключились js скрипты форму надо подключать выше чем tpl, хотя бы на hook_preprocess а то и на hook_alter
например как? и какие скрипты?
Примеров в коде достаточно, как дополнительные - https://drupal.org/project/examples