0

我正在尝试使用这样创建的提交按钮提交表单:

$form['actions'] = array('#type' => 'actions');
$form['actions']['submit'] = array(

'#type' => 'submit',
'#value' => t('Submit'),
'#weight' => 5,
'#submit' => array('edit_form_submit'),
);

但是,当表单提交时

function edit_form_submit($form, &$form_state){
      dsm('IM HERE!!!');
}

没有运行。

我检查了通常的事情行:

$form['#form_id'] 是 'edit_form' 并且 $form['#type'] 设置为 'form'。

我并不完全坚持这一点。我确实认为这一定是一个简单的被忽视的问题,但我没有看到。

有任何想法吗??

如果您需要更多信息,请询问。

4

1 回答 1

1

你不能这样做,你必须这样做

function mymodule_myfrom($form, &$form_state){

    $form['actions']['submit'] = array(
        '#type' => 'submit',
        '#value' => t('Submit'),
        '#weight' => 5,
    );

    return $form;
}

function mymodule_myfrom_submit($form, &$form_values){

    dsm('IM HERE!!!');

}

要调用您的表单,请执行此操作

$myfrom=drupal_get_form('mymodule_myfrom');
print drupal_render($myfrom);

要查看完整示例,请查看此示例模块,您可以从示例 https://drupal.org/project/examples中找到

你也可以查看这样的教程 http://mrphp.com.au/blog/how-make-simple-form-module-drupal

于 2013-08-10T00:47:48.613 回答