始终将焦点返回到特定输入字段

问题描述 投票:0回答:3

我不认为这个确切的问题在其他任何地方都有答案。

我有一个页面,其中包含几个输入字段,以及针对各种事物的大量ajax活动。这是一个在线POS界面。当通过按钮点击执行任何ajax动作时,通常希望始终将焦点返回到主条形码输入字段。

虽然这可以通过在任何这些操作之后始终调用$('#fieldid')。focus()来完成,但我想知道是否有一种方法可以指定该字段在任何操作之后应始终具有焦点。还有其他输入字段,您需要键入名称或其他内容,因此显然它不能只设置计时器并将焦点设置为超时,因为您需要有时间进行输入。

一种选择是让计时器始终运行来执行此操作,并在键入时不断重置它。这似乎是明智的,因为这些字段确实具有与它们相关联的键入的实时搜索。

也许我已经在这里回答了我自己的问题,但任何更好的方法都会非常感激。

javascript jquery setfocus
3个回答
0
投票

在添加html后,您是否尝试在回调中使用焦点触发器?

例:

$.post(
    'ajax.php',
    { next:next },
    function(data){
        $('body').append($(data).hide().fadeIn('slow'));
        $('textarea').focus();
    }
);

0
投票

为了避免每次ajax调用的重复代码,

使用ajaxStop事件。

$.ajaxStop(function(){
    $('textarea').focus();
});

0
投票

你可以使用preventDefault();在Javascript中的功能

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.