显示视图暴露表单项标签内部选择(而不是默认的' - 任何 - ')?

时间:2014-04-17 11:59:04

标签: forms drupal drupal-7 views

如何在视图公开表单而不是'- Any -'中显示表单项标签?更具体地说,我使用此代码将select的默认值文本替换为自定义文本,并希望该自定义文本成为该元素的标签:

function THEMENAME_form_views_exposed_form_alter(&$form, &$form_state) {
  //dpm($form);
  if ($form['#id'] == 'views-exposed-form-FORMID') {
$form['ITEMNAME']['#options']['All'] = t('My custom translatable text');    
  }
}

这适用于自定义文字。我想要的是使用简单的代码显示其标签而不是My custom translatable text

$form['ITEMNAME']['#options']['All'] = $form['ITEMNAME']['#name'];

但是在这些和类似的代码上没有运气。根据fo $ dpm($ form)输出'#name', '#title'元素似乎根本不存在。

目标是拥有https://drupal.org/project/compact_formshttps://drupal.org/project/In-Field-Labels的类似功能而没有其他Javascript库(更喜欢使用几个PHP行,请不要使用JS解决方案)

1 个答案:

答案 0 :(得分:2)

您的上述代码适用于选择字段但不适用于文本字段。如果您需要它来处理文本字段,可以试试这个

$form['ITEMNAME']['#attributes'] = array('placeholder' => array('My custom translatable text'));

$form['ITEMNAME']['#attributes'] = array('placeholder' =>$form['ITEMNAME']['#name']);

希望这可以帮助你