2012-02-08 1 views
0

Может ли кто-нибудь помочь мне изменить атрибут поля в drupal 7. Скажем, я создал имя поля hello_test с меткой как hello.Now мне нужно изменить метку и установить атрибут для filed в файле template.php в моей теме. Может ли кто-нибудь мне помочьИзменить атрибут id для поля в drupal 7

ответ

0

Я столкнулся с той же проблемой несколько дней назад. Когда я устанавливаю атрибут textfield onblur и onfocus, он не работает. Чтобы быть точным, он работал, но я не мог его увидеть, потому что он был перезаписан с помощью изменения формы модулей profile2.

Я думаю, что ваша форма изменяет api нагрузки до формы модуля profile2, изменяющей api. Так что перезаписывается. Я решил свою проблему, создав настраиваемую форму в другом пространстве имен.

function yourCustomModuleName_form_profile2_edit_testing_candidate_form_alter(&$form, &$form_state) { 

    $form['profile_testing_candidate']["field_candidate_name"] = array(
     "#title" => "Candidate Name", 
     "#type" => "textfield", 
     "#required" => TRUE, 
     "#description" => t(""), 
     '#default_value' => 'Given Name', 
     '#attributes' => array (
      'onblur' => "if (this.value == '') {this.value = 'Given Name'}", 
      'onfocus' => "if (this.value == 'Given Name') {this.value = ''}", 
     ), 
    ); 

    $form['profile_testing_candidate']["field_candidate_family_name"] = array(
     "#title" => "", 
     "#type" => "textfield", 
     "#required" => FALSE, 
     "#description" => t(""), 
     '#default_value' => 'Family Name', 
     '#attributes' => array (
       'onblur' => "if (this.value == '') {this.value = 'Family Name'}", 
       'onfocus' => "if (this.value == 'Family Name') {this.value = ''}", 
     ), 
    ); 
}