0

我编写了以下代码以将焦点设置到文本框中的文本末尾:

var textbox = document.getElementById('txtFilter');
textbox.focus(); 
textbox.value = textbox.value; 

但我在这里面临一个问题。当我继续快速打字时,新输入的字符没有出现,它一次又一次地显示旧值。所以我必须在按下每个键后等待,然后它才能正常工作。

我找到了另一段代码来实现这一点:

if (textbox.createTextRange) {               
var FieldRange = textbox.createTextRange();            
FieldRange.moveStart('character', textbox.value.length);
FieldRange.collapse();
FieldRange.select();
return false;
}    

但是当我尝试这个时,我得到了错误 - 由于错误 800a025e 有时无法完成操作。请帮我。任何帮助将不胜感激。

4

1 回答 1

0

您可以使用

$('#txtFilter').focus(); //focus using jQuery (browser indipendent)
$('#txtFilter').caretToEnd(); // move position to the end

不幸的是,您需要一个插件https://gist.github.com/DrPheltRight/1007907

于 2013-03-19T15:49:07.807 回答