【问题标题】:JQuery onclick function to focus inputjQuery onclick 函数聚焦输入
【发布时间】:2011-09-02 14:48:05
【问题描述】:

我想要一个 JQuery 函数,这意味着如果用户单击页面上的某些文本,它会聚焦一个输入。

$(document).ready(function(){
$('#header.search span').click(function(){
    $('#header.search input').focus();
});
});

这并没有做任何事情。在 Firebug 上没有注册任何内容。

有什么想法吗?

太棒了

【问题讨论】:

  • 向我们展示您的 html,以及您希望重点关注哪些输入?最接近的?

标签: jquery input focus


【解决方案1】:

http://jsfiddle.net/HenryGarle/LXngq/

<span>
    <br>
        Span
    <br>
    <input id="InputToFocus" type="text">
</span>

$('span').click(function(){
    $('#InputToFocus').focus();
});

似乎工作正常,这可能是您的选择器有问题。您能否发布围绕输入的 HTML 结构?

【讨论】:

    【解决方案2】:

    如果您有id 到输入元素,那么您不需要javascript 来执行此操作。您可以将for 属性与指向输入元素ID 的label 标记一起使用。试试这个

    工作demo

    <label for="input1">Name</label>
    <input id="input1" type="text" />
    

    如果您单击名称文本,焦点将被设置到输入字段中。

    【讨论】:

      【解决方案3】:

      $( "input" ).focus(function() {
        $( this ).next( "span" ).css( "display", "inline" ).fadeOut( 1000 );
      });
      span {
          display: none;
        }
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
      <p><input type="text"> <span>focus fire</span></p>
      <p><input type="password"> <span>focus fire</span></p>

      https://api.jquery.com/focus/

      【讨论】:

        【解决方案4】:

        我认为 $('#header.search input') 返回一堆 INPUT,而不仅仅是一个,所以 JQuery 可能不知道要关注哪一个。您需要决定关注哪一个。

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-05-26
        • 2021-12-02
        • 2021-11-15
        • 2020-07-19
        • 1970-01-01
        • 2016-05-03
        • 1970-01-01
        相关资源
        最近更新 更多