2009-05-05 11 views

risposta

123
$('input[type=text], textarea').css({width: '90%'}); 

che utilizza selettori CSS standard, jQuery ha anche una serie di filtri pseudo-selettore per vari elementi del modulo, ad esempio:

$(':text').css({width: '90%'}); 

corrisponderà tutti <input type="text"> elementi. Vedi Selectors documentation per maggiori informazioni.

+6

: il selettore di testo non selezionerà textareas (almeno nell'ultima jQuery). Volevo anche aggiungere qualcosa dalla documentazione di jQuery sul: selettore di testo: "Perché: il testo è un'estensione jQuery e non fa parte delle specifiche CSS, le query che utilizzano: il testo non può trarre vantaggio dall'aumento delle prestazioni fornito dal DOM nativo querySelectorAll (metodo .Per ottenere prestazioni migliori nei browser moderni, usa invece [type = "text"]. " – Pehmolelu

+1

$ (': text') non funziona per i campi password. – Fatih

1
$("**:**input[type=text], :input[type='textarea']").css({width: '90%'}); 
+0

Perché postare la stessa risposta due volte? Se c'è qualcosa di speciale nelle differenze minori, ti preghiamo di spiegarle! – roryf

+0

Personalmente apprezzo sapere di jQuery: input pseudo-selettore. +1 per mostrarmi qualcosa di nuovo. – eyelidlessness

+3

: input [type = 'textarea'] non funziona con l'ultimo jQuery. Devi usare textarea. – Pehmolelu

13

caselle Password sono anche caselle di testo, quindi se ne avete bisogno anche:

$("input[type='text'], textarea, input[type='password']").css({width: "90%"}); 

e mentre file di input è un po 'diverso, si consiglia di includere anche loro (ad esempio, per la coerenza visiva.):

$("input[type='text'], textarea, input[type='password'], input[type='file']").css({width: "90%"}); 
0
names = []; 
$('input[name=text], textarea').each(
    function(index){ 
     var input = $(this); 
     names.push(input.attr('name')); 
     //input.attr('id'); 
    } 
); 

è selezionare tutte le caselle di testo e textarea nel DOM, in cui $ .each itera funzione di fornire nome ecah el ement.

Problemi correlati