Drupal 7形成api。验证后将自定义类添加到元素

时间:2017-09-29 09:20:21

标签: drupal drupal-7 drupal-forms form-api

我环顾四周,无法找到有关如何将自定义类添加到表单元素/元素或<form>标记的解决方案。我有一个自定义表单验证功能,它执行一些自定义验证。 form_set_error确实在元素上设置了error类,但我想在form标记内的任何位置添加自定义类。

2 个答案:

答案 0 :(得分:1)

由于目标只是自定义错误字段的显示,更简洁的方法是在主题中创建自己的theme_form_element()并使用函数form_get_error($ element)添加所需的类,如果有任何错误在一个字段上返回。 使用此方法,您还可以显示错误字段旁边的错误消息,而不是在表单顶部。

答案 1 :(得分:0)

我找到了答案here。事实证明,您可以使用$form_state在提交后进行更改。我做了

if($haserror) {
    $form_state['complete form']['#attributes'] = array('class'=>array('contains_error'));
}