单击标签时选择文本框中的所有文本

时间:2015-07-03 07:28:23

标签: javascript html

我在我的网站中使用标签for属性来帮助盲人用户。

目前,当用户点击标签时,相应的输入将被激活。这意味着如果有名称的文本框,那么光标将 进入文本框的开头。

例如,如果文本框中的名称是" John",那么在点击标签上,光标将进入文本框并显示在" John"之前。

但我想要的是它应该选择" John"。这意味着应该选择文本框的文本。

任何人都可以帮我解决这个问题吗?

我的代码如下所示:



<div class="editor-label">
  <label for="ContactName">*Name</label>
</div>
<div class="editor-field">
  <div>
    <input id="ContactName" maxLength="40" name="ContactName" type="text" value="John" />
  </div>
</div>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:3)

我不确定你是否可以通过使用html / css来实现这一点,所以你很可能需要使用JS lib,例如jQuery。

通过使用jQuery,您可以在单击标签时使用select()方法,使用类似的东西;

$(function() {
    $('label').click(function() {
        var id = $(this).attr('for');
        $('#'+id).select();
    });
});

可在此处找到一个工作示例:http://jsfiddle.net/sf3bgwxr/