在Drupal 7中通过失败的表单验证清除表单输入

时间:2011-06-12 20:33:38

标签: drupal drupal-fapi drupal-forms

我无法在表单验证失败时清除表单输入。

例如,如果表单中有任何单选按钮元素,则表单验证函数将抛出错误,其中有两个组,未选中。如果用户选择第一个组,但未选择第二个组,则会引发错误。我想知道如何清除表单输入,以便清除组1中先前选择的单选按钮。

这是用Drupal 7完成的。

1 个答案:

答案 0 :(得分:-1)

您需要添加一个清除form_state ...的验证函数

function my_module_form_FORM_ID_alter(&$form, &$form_state, $form_id) {
  $form['#validate'][] = 'my_module_clear_values_validate';
}

function my_module_clear_values_validate($form, &$form_state) {
  if ($form_state['submitted']) {
    $form_state['values']['field_my_field'][LANGUAGE_NONE][0]['value'] = 'WHATEVS';
  }
}