Drupal 7 中表单验证失败时清除表单输入

发布于 2024-11-15 08:30:21 字数 162 浏览 1 评论 0原文

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

例如,如果表单中存在任何单选按钮元素(其中有两组且未选中),则表单验证功能将引发错误。如果用户选择第一组,但没有选择第二组,则会引发错误。我想知道如何清除表单输入,以便清除组 1 中先前选择的单选按钮。

这是通过 Drupal 7 完成的。

I am having trouble clearing the form input upon failed validation of the form.

For example the form validation function would throw an error if there is a there is any radio button element in the form, of which there is two groups, left unchecked. If the user select the first group, but does not select for the second group, an error is thrown. I would like to know how I can clear the form input such that the previously selected radio button in group 1 is cleared.

This is being done with Drupal 7.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

此岸叶落 2024-11-22 08:30:21

您需要添加一个验证函数来清理 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';
  }
}

You'll need to add a validate function that cleans the 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';
  }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文