使用jquery聚焦字段

时间:2013-06-19 13:54:41

标签: javascript jquery

我想知道如何关注这个领域。这是我的代码: http://jsfiddle.net/spadez/9sX6X/31/

var container = $('.copies'),
    value_src = $('#current'),
    maxFields = 10,
    currentFields = 1;

$('.copy_form').on('click', '.add', function () {
    if ($.trim(value_src.val()) != '') {
        if (currentFields < maxFields) {
            var value = value_src.val();
            var html = '<div class="line">' +
                '<input id="accepted" type="text" value="' + value + '" />' +
                '<input type="button" value="X" class="remove" />' +
                '</div>';

            $(html).appendTo(container);
            value_src.val('');
            currentFields++;
        } else {
            alert("You tried to add a field when there are already " + maxFields);
        }
    } else {
        alert("You didn't enter anything");
    }
})
    .on('click', '.remove', function () {
    $(this).parents('.line').remove();
    currentFields--;
});

当我在“内容”中添加一个值并点击添加时,我希望它重新关注“当前”字段,以便我可以开始输入更多内容。

4 个答案:

答案 0 :(得分:2)

只需使用.copy_form -

的内部点击事件
 value_src.focus();

演示--> http://jsfiddle.net/9sX6X/35/

答案 1 :(得分:2)

您需要focus() jQuery函数:

.focus()

  

将事件处理程序绑定到“焦点”JavaScript事件,或在元素上触发该事件。

     

此方法是第一个和第二个版本中.on('focus', handler)的快捷方式,第三个版本中的.trigger('focus')

     

焦点事件在获得焦点时发送到元素。此事件隐式适用于有限的元素集,例如表单元素(,等)和链接()。在最近的浏览器版本中,可以通过显式设置元素的tabindex属性来扩展事件以包括所有元素类型。元素可以通过键盘命令(例如Tab键)或通过鼠标单击元素来获得焦点。

     

具有焦点的元素通常由浏览器以某种方式突出显示,例如,围绕元素的虚线。焦点用于确定哪个元素是第一个接收键盘相关事件的元素


因此,在您的代码中添加:

 $("#current").focus();

JSFIDDLE

答案 2 :(得分:0)

查看jQuery.focus()

的文档

答案 3 :(得分:0)

如果您将目标设为#target(此处为#current),您应该加入事件on('click', '.add'...)功能

$('#target').focus();