2013-02-27 9 views
18

Vorrei aggiungere tabindex a tutti gli elementi del modulo. Il modulo è dymanic e non posso aggiungerlo all'HTML. Mi piacerebbe eseguirlo come una funzione. Se ci sono diversi pulsanti radio con lo stesso nome, ognuno deve avere il proprio valore di tabindex. La maggior parte degli elementi del modulo sulla pagina inizia come INPUT, tranne SELECT. Come posso renderlo conto?Aggiunta dinamica di tabindex

Credo che sarà necessario eseguire un ciclo e aggiungere attributo, giusto?

var n = 1; 

$('input, select').each(function() {    
    $(this).attr('tabindex', n++); 
}); 

risposta

38

domanda strana, ma sì che è l'idea di base:

$(":input").each(function (i) { $(this).attr('tabindex', i + 1); }); 

Questo utilizza :input per ottenere tutto, compresi i pulsanti e le aree di testo.

+1

Perché è strano? Alcuni browser hanno problemi di tabulazione attraverso i pulsanti radio dello stesso gruppo ... Grazie. – santa

+0

È strano perché sicuramente otterrai indici di tabulazione ma non in alcun ordine garantito. Quindi potresti scoprire che questo ti fa casualmente passare attraverso i pulsanti di opzione. – Brandon

+0

Non funzionerà con la mia struttura HTML? Non ho un layout stravagante. – santa

Problemi correlati