Selettore text

Il selettore :text seleziona gli input con tipo text. Vedi il tag input. Poiché :text non fa parte delle specifiche CSS, per migliorare le prestazioni nei browser moderni è meglio utilizzare [type='text'] al suo posto.

Sintassi

In questo modo selezioniamo gli input con tipo text:

javascript$(':text');

Come con altri selettori di pseudo-classe (che iniziano con ':'), è meglio premettere il nome del tag o di un altro selettore prima di ':', altrimenti verrà applicato il selettore '*', cioè $(':text') verrà interpretato come $('*:text'), quindi invece è meglio usare $('input:text'). Bisogna ricordare che :text selezionerà anche tutti gli input a cui non è specificato l'attributo type, le differenze di comportamento si possono vedere nel seguente esempio:

javascript$('<input>').is('[type=text]'); // restituirà false
$('<input>').is(':text'); // restituirà true

Esempio

Selezioniamo tutti gli input con tipo text e rendiamogli lo sfondo verde e il bordo rosso utilizzando il metodo css:

html<form>
  <input type="button" value="button">
  <input type="file">
  <input type="checkbox">
  <button>button</button>
  <input type="reset">
  <input type="radio" name="test">
  <input type="radio" name="test">
  <input type="checkbox">
  <input type="text">
</form>
javascript$('form input:text').css({background: 'green', border: '2px red solid'});

$('form').submit(function(event) {
  event.preventDefault(); // impedisce l'invio del form
});

Vedi anche

  • tag input
  • selettore input,
    che seleziona gli elementi di controllo form - input, textarea, menu a tendina e pulsanti
  • metodo filter,
    che filtra gli elementi in un set in base a un selettore specificato