首页 文章

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

提问于
浏览
2

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

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

例如,如果文本框中的名称为“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>

1 回答

  • 3

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

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

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

    可以在这里找到一个工作示例:http://jsfiddle.net/sf3bgwxr/

相关问题