我有一个drupal表单,我需要在表单元素中为组件添加单独的类。
那就是我需要将属性class ='text'添加到'textbox(实际框)'和class ='title'添加到'textbox title'(#title')。
我该怎么做?
答案 0 :(得分:9)
对于第一个将类添加到textfield本身的情况 - 使用#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 */
}
答案 1 :(得分:2)
有人已回答您的问题Remove class=“form-item” from Drupal forms。
该函数可以为标题添加class ='title'
但是对于class ='text',你应该使用theme_textfield(或theme_textarea)来拥有template.php
从./included/form.inc中获取代码
但我建议做主题所需的自定义表单,而不是所有表单元素。在某处它可以引发样式冲突等。当然,如果客户端不要求更改所有表单元素。在实际情况下,不需要更改默认元素。