text selector
Description: Selects all input elements of type text.
version added: 1.0jQuery( ":text" )
$( ":text" )
allows us to select all <input type="text">
elements. As with other pseudo-class selectors (those that begin with a ":") it is recommended to precede it with a tag name or some other selector; otherwise, the universal selector ( "*" ) is implied. In other words, the bare $( ":text" )
is equivalent to $( "*:text" )
, so $( "input:text" )
should be used instead.
Note: As of jQuery 1.5.2, :text
selects input
elements that have no specified type
attribute (in which case type="text"
is implied).
This difference in behavior between $( ":text" )
and $( "[type=text]" )
, can be seen below:
$( "<input>" ).is( "[type=text]" ); // false $( "<input>" ).is( ":text" ); // true
Additional Notes:
- Because
:text
is a jQuery extension and not part of the CSS specification, queries using:text
cannot take advantage of the performance boost provided by the native DOMquerySelectorAll()
method. For better performance in modern browsers, use[type="text"]
instead.
Example:
Finds all text inputs.
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>text demo</title> <style> textarea { height: 25px; } </style> <script src="https://code.jquery.com/jquery-3.5.0.js"></script> </head> <body> <form> <input type="button" value="Input Button"> <input type="checkbox"> <input type="file"> <input type="hidden"> <input type="image"> <input type="password"> <input type="radio"> <input type="reset"> <input type="submit"> <input type="text"> <select> <option>Option</option> </select> <textarea></textarea> <button>Button</button> </form> <div></div> <script> var input = $( "form input:text" ).css({ background: "yellow", border: "3px red solid" }); $( "div" ) .text( "For this type jQuery found " + input.length + "." ) .css( "color", "red" ); // Prevent form submission $( "form" ).submit(function( event ) { event.preventDefault(); }); </script> </body> </html>