我有一个 drupal 表单,我需要向表单元素中的组件添加单独的类。
那就是我需要将属性class='text'添加到'textbox(实际框)'和class='title'到'textbox title'(#title')。
我该怎么做呢?
我有一个 drupal 表单,我需要向表单元素中的组件添加单独的类。
那就是我需要将属性class='text'添加到'textbox(实际框)'和class='title'到'textbox title'(#title')。
我该怎么做呢?
对于第一种情况——将类添加到文本字段本身——使用#attributes
属性:
$form['foo'] = array(
'#type' => 'textfield',
'#title' => t('Textbox title'),
'#attributes' => array(
'class' => array('text'), // change to just 'text' for Drupal 6
),
);
对于第二种情况——将类添加到标签中——你对 Forms API 不走运。相反,您可以使用字段和标签的包装类来定位它:
.form-item-field-foo label {
/* CSS here */
}
有人已经回答了您的问题Remove class=“form-item” from Drupal forms。
该函数提供了将 class='title' 添加到标题的可能性。
但是对于class='text',您应该使用theme_textfield(或theme_textarea)来拥有template.php
从./included/form.inc 中获取代码
但我建议对所需的自定义表单进行主题化,而不是所有表单元素。它可能会在某个地方引发样式冲突等。当然,如果客户不要求更改所有表单元素。在实际情况下,不需要更改默认元素。