Как выделить все текстовые поля и текстовые поля с помощью jQuery?

Как выбрать все текстовые поля и текстовые поля, например:

<input type='text' />

а также

<textarea></textarea>

на странице и имеют свойство style.width="90%"; применяется к ним?

4 ответа

Решение
$('input[type=text], textarea').css({width: '90%'});

При этом используются стандартные CSS-селекторы, jQuery также имеет набор фильтров псевдоселекторов для различных элементов формы, например:

$(':text').css({width: '90%'});

будет соответствовать всем <input type="text"> элементы. См. Документацию по выбору для получения дополнительной информации.

Поля паролей также являются текстовыми полями, поэтому, если они вам тоже нужны:

$("input[type='text'], textarea, input[type='password']").css({width: "90%"});

и хотя ввод файла немного отличается, вы можете также включить их (например, для визуальной согласованности):

$("input[type='text'], textarea, input[type='password'], input[type='file']").css({width: "90%"});
$("**:**input[type=text], :input[type='textarea']").css({width: '90%'});
names = [];
$('input[name=text], textarea').each(
    function(index){  
        var input = $(this);
        names.push( input.attr('name') );
        //input.attr('id');
    }
);

он выбирает все текстовые поля и текстовое поле в вашей DOM, где функция $.each выполняет итерацию, чтобы предоставить имя элемента ecah.

Просто используйте $(":input")

Пример отключения всех вводов (текстовое поле, вводимый текст и т. Д.):

$(":input").prop("disabled", true);
<form>
  <textarea>Tetarea</textarea>
  <input type="text" value="Text">
  <label><input type="checkbox"> Checkbox</label>
</form>


<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

Другие вопросы по тегам