如何使用jQuery选择所有textareas和文本框?

时间:2009-05-05 16:20:45

标签: javascript jquery

如何选择所有文本框和textareas,例如:

<input type='text' />

<textarea></textarea>
在页面上

并将属性style.width="90%";应用于它们?

5 个答案:

答案 0 :(得分:131)

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

使用标准CSS选择器,jQuery还有一组用于各种表单元素的伪选择器过滤器,例如:

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

将匹配所有<input type="text">元素。有关详细信息,请参阅Selectors documentation

答案 1 :(得分:13)

密码框也是文本框,因此如果您也需要它们:

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

虽然文件输入有点不同,但您可能也希望包含它们(例如,为了视觉一致性):

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

答案 2 :(得分:1)

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

答案 3 :(得分:0)

names = [];
$('input[name=text], textarea').each(
    function(index){  
        var input = $(this);
        names.push( input.attr('name') );
        //input.attr('id');
    }
);

它选择DOM中的所有文本框和textarea,其中$ .each函数迭代以提供ecah元素的名称。

答案 4 :(得分:0)

只需使用$(":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>