gpt4 book ai didi

jquery - 在文本框中的最后一个字符之后设置焦点

转载 作者:IT王子 更新时间:2023-10-29 03:26:38 32 4
gpt4 key购买 nike

我有 3 个电话号码文本框。当用户键入时,它会自动从一个文本框移动到下一个文本框。当用户按下退格键时,我可以将焦点移至上一个文本框。问题是在 IE 中,焦点设置在文本框的开头。这是我的代码,在 chrome 中运行良好。

$('#AreaCode').live('keyup', function (event) {
if ($(this).val().length == $(this).attr("maxlength"))
$('#Prefix').focus();
});

$('#Prefix').live('keyup', function (event) {
if (event.keyCode == 8 && $(this).val().length == 0)
$('#AreaCode').focus();

if ($(this).val().length == $(this).attr("maxlength"))
$('#Number').focus();
});

$('#Number').live('keyup', function (event) {
if (event.keyCode == 8 && $(this).val().length == 0)
$('#Prefix').focus();
});

如何在后退时将焦点设置在内容的末尾?

最佳答案

这是最简单的方法。如果你要倒退,只需添加$("#Prefix").val($("#Prefix").val());设置焦点后

这是更合适(更干净)的方式:

function SetCaretAtEnd(elem) {
var elemLen = elem.value.length;
// For IE Only
if (document.selection) {
// Set focus
elem.focus();
// Use IE Ranges
var oSel = document.selection.createRange();
// Reset position to 0 & then set at end
oSel.moveStart('character', -elemLen);
oSel.moveStart('character', elemLen);
oSel.moveEnd('character', 0);
oSel.select();
}
else if (elem.selectionStart || elem.selectionStart == '0') {
// Firefox/Chrome
elem.selectionStart = elemLen;
elem.selectionEnd = elemLen;
elem.focus();
} // if
} // SetCaretAtEnd()

关于jquery - 在文本框中的最后一个字符之后设置焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4609405/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com