Drupal 7 形式 api。验证后将自定义 class 添加到元素
Drupal 7 form api. Add custom class to element after validation
我环顾四周,找不到关于如何将自定义 class 添加到表单 element/elements 或 <form>
标签的解决方案。我有一个自定义表单验证功能,可以执行一些自定义验证。 form_set_error
确实在元素上设置了 error
class,但我想在 form
标签内的任何位置添加我的自定义 class。
我找到了答案here。事实证明,您可以在提交后使用 $form_state
对表单进行更改。我做到了
if($haserror) {
$form_state['complete form']['#attributes'] = array('class'=>array('contains_error'));
}
由于目标只是在出错时自定义字段的显示,更简洁的方法是在主题中创建自己的 theme_form_element() 并使用函数 form_get_error($element ) 以在字段返回任何错误时添加所需的 class。
使用此方法,您还可以在错误字段旁边显示错误消息,而不是在表单顶部。
我环顾四周,找不到关于如何将自定义 class 添加到表单 element/elements 或 <form>
标签的解决方案。我有一个自定义表单验证功能,可以执行一些自定义验证。 form_set_error
确实在元素上设置了 error
class,但我想在 form
标签内的任何位置添加我的自定义 class。
我找到了答案here。事实证明,您可以在提交后使用 $form_state
对表单进行更改。我做到了
if($haserror) {
$form_state['complete form']['#attributes'] = array('class'=>array('contains_error'));
}
由于目标只是在出错时自定义字段的显示,更简洁的方法是在主题中创建自己的 theme_form_element() 并使用函数 form_get_error($element ) 以在字段返回任何错误时添加所需的 class。 使用此方法,您还可以在错误字段旁边显示错误消息,而不是在表单顶部。