Expertos en Symfony y Drupal

Cambiar Tab Index de un form en Drupal 7

Buenas drupaleros,

hoy vamos a ver un truco muy sencillo y que nos puede resultar muy útil. En ocasiones, por diferentes circunstancias un formulario tiene los tabindex mal asignados. Esta mala asignación puede ser debida por ejemplo, porque a la hora de la maquetación hemos recolocado los diferentes campos del formulario, o porque cuando creamos el formulario no tuvimos en cuenta el orden o simplemente porque nos dan ya hecho el formulario y viene totalmente descolocado.

Una solución muy sencilla es utilizar el famoso método form_alter y asignarle a cada campo un tabindex diferente. En el ejemplo que os muestro, asignamos un nuevo tabindex al campo email y name, esto hará que sean campos correlativos a la hora de interactuar con el formulario :


function MyTema_form_alter(&$form, &$form_state, $form_id) {
  if($form_id == 'mi_formulario'){
      $form['email']['#attributes']['tabindex'][0] = '60';
      $form['name']['#attributes']['tabindex'][0] = '61';
  }
}

Con el atributo tabindex, lo que hacemos es ordenar la asignación del foco. Recordemos que la propiedad tabindex mejora la accesibilidad de la web.

Espero que os sea util.

Drupal y rock and roll

[x] Este sitio utiliza cookies para mejorar tu experiencia de usuario. Al continuar navegando estás aceptando su uso. Política de cookies.