:text Selector

Selects all input elements of type text.

.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

Finds all text inputs.

JS
<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>
CSS
textarea {
 height: 25px;
}
HTML
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();
});
DEMO

Looking for a Web Developer?

πŸ‘‹

Hi! I'm Basti, author of this site. If you are looking for a web developer with 15+ years of experience, holla at me!

Be it the good 'ol jQuery, vanilla JS or modern frameworks like Vue and Svelte, front- or backend, I can help you.

Just write me at jobs@jqapi.com :)