Как мне изменить класс кнопки отправки?


 <input type="submit" class="form-submit" value="" name="op" id="edit-submit">

Я хочу изменить класс с "форма-отправить" на "форма-отправить".

Как я могу это сделать? Откуда взялся класс "форма-отправить"?

 12
Author: kiamlaluno, 2011-05-23

2 answers

На вашем месте я бы не менял имя класса, а скорее добавил ваш собственный класс в элемент формы. Вы можете сделать это, реализовав hook_form_alter в пользовательском модуле или (в случае Drupal 7) в своей теме. Код будет выглядеть примерно так:

<?php
function mymodule_form_alter(&$form, &$form_state, $form_id) {
  if ($form_id = 'my_form') {
    $form['actions']['submit']['#attributes']['class'][] = 'form-submitone';
  }
}
?>

Кстати, элемент кнопки отправки не обязательно $form['actions']['submit']. Вам нужно будет выяснить, какой элемент является кнопкой отправки в вашей конкретной ситуации. Вы можете сделать это, выведя переменную $form; Я рекомендуем установить модуль Devel и добавить dsm($form); в функцию выше.

 22
Author: marcvangend, 2011-05-23 10:06:06

Этот код в основном используется пользователем для добавления вашего пользовательского класса на кнопку отправки формы.

function subscriber_form(){
    $form['submit'] = array(
    '#type'  => 'submit',
    '#attributes'=>array('class'=> array('mybtn')),
    '#ajax' => array(
      'callback' => 'subscriber_ajax_callback',
    ),
    '#value' =>'Submit', // @FIXME doesn't render quotes properly
  );

}
 0
Author: devendra, 2015-12-21 17:11:58