将焦点添加到添加的每个新文本输入上

时间:2013-11-11 18:40:35

标签: javascript jquery

我使用这个脚本时发现当用户点击文本链接时会添加一个文本框,我有什么办法可以让它自动出现的每个新文本框都将光标放在文本框内。

继承剧本:

function add(orderType) {

//Create an input type dynamically.
var element = document.createElement("input");
//Assign different attributes to the element.
element.setAttribute("type", "text");
element.setAttribute("name", orderType + "[]");


var foo = document.getElementById(orderType);

//Append the element in page (in span).
//Create the option text
var a = document.createTextNode("Choice: ");
foo.appendChild(a);
foo.appendChild(element);
var br = document.createElement("br");
foo.appendChild(br);
i++;    
}

非常感谢

3 个答案:

答案 0 :(得分:2)

element.focus()追加到foo后致电function add(orderType) { //Create an input type dynamically. var element = document.createElement("input"); //Assign different attributes to the element. element.setAttribute("type", "text"); element.setAttribute("name", orderType + "[]"); var foo = document.getElementById(orderType); //Append the element in page (in span). //Create the option text var a = document.createTextNode("Choice: "); foo.appendChild(a); foo.appendChild(element); var br = document.createElement("br"); foo.appendChild(br); element.focus();//focus new input i++; }

{{1}}

答案 1 :(得分:0)

jQuery解决方案将选择最后一个输入,然后将其聚焦,其中#ordertype是容器ID:

  

$(“#”+ orderType +“input:last”)。focus();

答案 2 :(得分:0)

自从我在javascript中编程并且现在重新学习它已经有一段时间了...我相信 .focus 就是你想要的。

document.getElementById(orderType).focus 

=====================

.tabindex((希望正确的syntex))与“tab”键一起使用。

document.getElementById(orderType).tabindex = 0     //first name
document.getElementById(orderTyppe_2).tabindex = 1  //last name
document.getElementById(orderTyppe_3.tabindex = 2  //address
document.getElementById(orderTyppe_3.tabindex = 3  //city
etc...

更多地用于注册页面或填写送货地址页面。你只是设置了tabindex,所以当你按Tab键时,它会带你到文件中下一个最高的tabindex数字。当通过javascript动态改变页面时,可以更有用。

==================

在我的脑海里,我想说还有另一个

.something
document.getElementById(orderType).something
for <input /> or <input></input> or like elements 

但我不记得了。处理“游标”但它可能是一个跨浏览器脚本的东西。并且只在其中一个主要浏览器中实现。