Drupal向导表单:验证和上一个按钮

时间:2009-02-21 01:06:04

标签: php drupal drupal-6 drupal-fapi drupal-form-validation

在我的drupal6网站中,我有向导表单。我使用表单存储和rebuild属性使用FormAPI实现了它。我的表单验证是使用#required属性和#element_validate属性中的函数完成的。它工作正常,但有一点,当我点击上一个按钮时,表单正在验证,我不希望它。当单击表单的特定按钮时,是否有一种智能且正确的方法来禁用验证?

3 个答案:

答案 0 :(得分:1)

干净地(不幸的是)这样做的唯一方法是避免使用#required = TRUE并在验证处理程序中自己验证它,同时考虑到向导过程中表单的“步骤”的知识。

一种常见的方法是在$ form_state ['storage']中累积所有正在进行的数据,它将在重建之间保持不变。

答案 1 :(得分:1)

  // hack to clear validation errors during wizard processing
  form_set_error(NULL, FALSE, TRUE);
  unset($_SESSION['messages']['error']);

答案 2 :(得分:1)

凯文的回答有效。您也可以尝试http://drupal.org/project/skip_validation,在其中添加其他属性到您之前的按钮'#skip_validation' => TRUE