添加新的表单时,如何保持表单的重点? [英] How do I keep a form in focus when a new one is added?

查看:154
本文介绍了添加新的表单时,如何保持表单的重点?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是一个小提琴: FIDDLE

  function blanker(){
var c = $('。whatever')。html()。replace(thisWillBlank,< form>< input type ='text '
id ='thisWillBlank'>< / form>);
$('。whatever')。html(c);
}

$('#alreadyBlanked')。focus();

setTimeout(function(){blanker()},3000);

使用JS / jquery / css我只想点击哪个表单即使出现新的焦点也是如此。谢谢。

解决方案

您正在替换元素,因此旧元素不再可用,但只要它具有ID,你可以改为:
$ b $ pre $函数blanker(){
var active = document.activeElement.id;
var c = $('。whatever')。html()。replace(thisWillBlank,< form>< input type ='text'id ='thisWillBlank'>< / form> );
$('。whatever')。html(c);
$('#'+ active).focus();

FIDDLE


Here's a fiddle: FIDDLE

function blanker(){ 
    var c = $('.whatever').html().replace("thisWillBlank", "<form><input type='text' 
            id='thisWillBlank'></form>");
    $('.whatever').html(c); 
}

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

setTimeout(function(){blanker()}, 3000); 

Using JS/jquery/css I would just like for whichever form that has been clicked on, to remain in focus even if new ones appear. Thanks.

解决方案

You're replacing the elements, so the old element is no longer available, but as long as it has an ID, you can target that instead:

function blanker(){ 
    var active = document.activeElement.id;
    var c = $('.whatever').html().replace("thisWillBlank", "<form><input type='text' id='thisWillBlank'></form>");
    $('.whatever').html(c); 
    $('#'+active).focus();
}

FIDDLE

这篇关于添加新的表单时,如何保持表单的重点?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆