使用jQuery / Javascript放置占位符

时间:2015-12-17 07:24:44

标签: javascript jquery

如果页面上只有一个<input>,我可以通过jQuery放置占位符:

<input type="text"/>

$(document).ready(function() {
    placeholders();
    function placeholders() {
        $('input[type=text]').each(function() {

            $(this).attr('placeholder', 'hello' );
        });
    }
});

但是,我在一个页面中有多个<input>字段,如下所示:

<input type="text" class="first">
<input type="text" class="second">

我希望仅在<input type="text">的第一个class="first"上添加占位符。

如何仅在第一个匹配的文字input中添加占位符?

5 个答案:

答案 0 :(得分:3)

$('input[type=text].first').attr('placeholder', 'hello' );

此处input将选择所有input tag[type=text]将选择类型为文字的输入,然后.first将选择类first的子集。

如果您想选择first类的第一个输入,请执行$('input[type=text].first').first()

答案 1 :(得分:2)

  

我希望只在第一个上添加一个占位符   有class =“first”。

     

如何仅将占位符添加到第一个匹配的文本输入?

尝试将document.querySelector()与选择器"input[type=text][class=first]"setAttribute()

一起使用

function placeholders() {
  document.querySelector("input[type=text][class=first]")
  .setAttribute("placeholder", "hello");
}

$(document).ready(placeholders);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<input type="text" class="first">
<input type="text" class="second">

答案 2 :(得分:1)

$('input[type=text].first').attr('placeholder', 'hello' );

使用class选择器

答案 3 :(得分:1)

你可以尝试这个解决方案:
    $('input[type=text].first').attr('placeholder', 'hello' );

答案 4 :(得分:0)

如果您需要特定于元素的脚本,请使用ID而不是CLASS以获得更好的性能。

<input type="text" class="first" id="first">

$("#first").attr('placeholder', 'hello' );