Jquery选择多个输入而不使用id

时间:2018-03-02 13:51:08

标签: javascript jquery

我有一段这样的代码:

<div class="container">

    <div class="row">
        <div class="col">
            <input class="form-control" type="text" id="#first">
        </div>
        <div class="col">
            <input class="form-control" type="text" id="#second">
        </div>
        <div class="col">
            <input class="form-control" type="text" id="#third">

        </div>
    </div>


</div>

如果我想获取每个输入的文本,我可以简单地使用jquery id选择($('first).text()) 既然我知道有很多选择dom元素的方法,有没有一种很好的方法可以选择不使用id选择器的每一个?

1 个答案:

答案 0 :(得分:1)

使用评论中建议的$("input[type=text]") Carsten 。 (也根据你的语法观察他的提示)

如果您想使用这些元素(例如验证),您可以在jquery中使用.each()函数并使用$(this):

$("input[type=text]").each(function( index ) {
  var test = $(this).val();
});

这里有一些其他选择这些输入的可能性:

<强>类

给他们所有相同的类,并使选择器像这样$(".yourClass")

<强>父

为容器提供您要选择特定类$(".yourContainerClass input")或更精确$(".yourContainerClass input[type=text]")

的所有输入

<强>属性

type一样,您可以访问输入字段的每个属性,如下所示:$("[attribute='value']")这可能是name value或您喜欢的watherver

在这里,您可以根据w3schools概述属性选择器:

  • [attribute] - ex。 $(&#34; [href]&#34;) - 具有href属性的所有元素
  • [attribute!= value] - ex。 $(&#34; [href!=&#39; default.htm&#39;]&#34;) - href属性值不等于&#34; default.htm&#34;
  • [attribute $ = value] - ex。 $(&#34; [href $ =&#39; .jpg&#39;]&#34;) - 所有元素的href属性值以&#34; .jpg&#34;
  • 结尾
  • [attribute | = value] - ex- $(&#34; [title | =&#39;明天&#39;]&#34;) - 所有带title属性的元素价值等于&#39;明天&#39;或者从明天&#39;开始后跟一个连字符
  • [attribute ^ = value] - ex。 $(&#34; [title ^ =&#39; Tom&#39;]&#34;) - 标题属性值以&#34开头的所有元素; Tom&#34;
  • [attribute~ = value] - ex。 $(&#34; [title~ =&#39; hello&#39;]&#34;) - 所有带有title属性值的元素包含特定单词&#34; hello&#34;
  • [attribute * = value] - ex。 $(&#34; [title * =&#39; hello&#39;]&#34;) - 所有标题属性值包含单词&#34; hello&#34;
  • 的元素