селектор text
Описание: Выбирает все элементы ввода типа text.
версия добавлена: 1.0jQuery( ":text" )
$( ":text" ) позволяет нам выбрать все <input type="text"> элементы. Как и в случае с другими селекторами псевдоклассов (те, которые начинаются с ":"), рекомендуется предварять их именем тега или каким-либо другим селектором; в противном случае подразумевается универсальный селектор ( "*" ). Другими словами, чистый $( ":text" ) эквивалентен $( "*:text" ), поэтому следует использовать $( "input:text" ).
Примечание: Начиная с jQuery 1.5.2, :text выбирает input элементы, у которых нет указанного type атрибута (в этом случае подразумевается type="text").
Это различие в поведении между $( ":text" ) и $( "[type=text]" ), можно увидеть ниже:
$( "<input>" ).is( "[type=text]" ); // false $( "<input>" ).is( ":text" ); // true
Дополнительные заметки:
- Поскольку
:textявляется расширением jQuery и не является частью спецификации CSS, запросы, использующие:text, не могут воспользоваться повышением производительности, обеспечиваемым методом нативного DOMquerySelectorAll(). Для лучшей производительности в современных браузерах используйте[type="text"]вместо этого.
Пример:
Находит все текстовые поля ввода.
<!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.7.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" ).on( "submit", function( event ) {
event.preventDefault();
} );
</script>
</body>
</html>