drupal - 如何在Drupal 5表单中添加两个提交按钮?

标签 drupal drupal-fapi drupal-5

我的表单上有两个提交按钮。一个是普通的提交按钮,它像my-form-submit一样调用-ah-so:

$form['fieldset']['submit'] = array(
  '#type' => 'submit',
  '#value' => 'Show Applications',
);

我想添加另一个按钮来提交表单,但是调用另一个提交处理程序。有什么办法吗?我看过将#submit属性添加到类似-ah-so的元素中:
$form['fieldset']['evil_plan'] = array(
  '#type' => 'submit',
  '#value' => 'Big Red Button',
  '#submit' => array('steal_formula_for_icantbeliveitsnotbutter'),
);

希望调用`steal_formula_for_icantbeliveitsnotbutter`函数,但是没有用。当我点击红色大按钮时,通常的`my_form_submit`函数被调用,这使我的计划变成了数以百万计的黄油替代品。谁能为这个黑暗的混乱弄清楚一点?

最佳答案

对于Drupal 5,这是唯一的解决方案:

function my_form_submit($form_id, $form_values) {
  if ($form_values['op'] == 'Show Applications') {
    // handle 'Show Applications' submission
  }
  elseif ($form_values['op'] == 'Big Red Button') {
    // handle 'Big Red Button' submission
  }
}

my_form_validate相同。

在Drupal 6中,这可以通过新引入的custom #submit and #validate handlers for form buttons轻松完成。

关于drupal - 如何在Drupal 5表单中添加两个提交按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1411907/

相关文章:

php - Drupal:在网络表单中的提交按钮上方添加免责声明文本

php - drupal:表单API,根据输入动态隐藏或显示字段

带有自定义 ID 的 Drupal 表单

德鲁帕尔 5 : CCK fields in custom content type

performance - 在 Drupal 站点上混合使用 http 版本是否可以接受?

javascript - Jquery 仅适用于 IE(高级 slider )

jquery - 如何使用ajax提交drupal表单?

drupal - 哪个版本的 TinyMCE 可以在 Drupal 5 中与 google chrome 一起使用?

Drupal 允许查看未发布的内容

javascript - Drupal 7 背景图像无需滚动即可修复