drupal_get_form('event_signup_form')
カスタムフォームをブロック内に埋め込むために使用しています。フォームは意図したとおりにレンダリングされますが、フォームを送信しても何もトリガーされません。
フォーム関数自体が呼び出さevent_signup_form($form, &$form_state)
れ、送信関数が呼び出されますが、呼び出されてevent_signup_form_submit($form, &$form_state)
いません。
hook_block_viewを使用してフォームを表示しています。
function event_block_view($delta = '') {
$blocks = array();
if ($delta ...) {
$blocks['content'] = drupal_render(drupal_get_form('event_signup_form'));
}
}
私はこれをうまく動作させることができました-ここに方法(スタブ)があります:
function hook_block_view($delta = '') {
$blocks['content'] = drupal_render(drupal_get_form('event_signup_form'));
}
function event_signup_form() {
// Register form submit handler, same goes for validation handler
$form['#submit'][] = 'event_signup_form_submit';
return $form;
}
function event_signup_form_submit($form, &$form_state) {
// This is now triggered
}