Selector text
De selector :text selecteert invoervelden met
het type text. Zie de tag
input.
Aangezien :text niet tot de CSS-specificatie behoort,
is het voor betere prestaties in moderne
browsers beter om [type='text'] te gebruiken.
Syntaxis
Zo selecteren we invoervelden met het type text:
$(':text');
Net als bij andere pseudo-klasse selectors
(die beginnen met ':'), is het beter
om voor de ':' een tagnaam of een andere selector te plaatsen.
Anders wordt de selector '*' toegepast,
dus $(':text') wordt geïnterpreteerd als
$('*:text'). Daarom is het beter om
$('input:text') te gebruiken.
Houd er rekening mee dat :text ook
alle invoervelden selecteert waarvan het type attribuut
niet is gespecificeerd.
Het verschil in gedrag is te zien in het volgende
voorbeeld:
$('<input>').is('[type=text]'); // retourneert false
$('<input>').is(':text'); // retourneert true
Voorbeeld
Laten we alle invoervelden met het type text selecteren en
ze een groene achtergrond en een rode rand geven met behulp van de methode
css:
<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>
$('form input:text').css({background: 'green', border: '2px red solid'});
$('form').submit(function(event) {
event.preventDefault(); // voorkomt het verzenden van het formulier
});