如何使用 jQuery 将光标位置设置在文本字段中字符串的末尾?

发布于 2024-12-03 14:42:54 字数 219 浏览 2 评论 0原文

我正在使用 jQuery 1.6,并且我有一个文本字段,我希望在该字段接收焦点后将光标定位在字符串\文本的末尾。有没有一个微不足道或容易做到这一点?

此时我正在使用以下代码:

$jQ('#css_id_value').focus(function(){
    this.select();
});
$jQ('css_id_value').focus();

I am using jQuery 1.6 and I have a text field for which I would like the cursor to be positioned at the end of the string\text after the field receives focus. Is there a trivial or easy to do this?

At this time I am using the following code:

$jQ('#css_id_value').focus(function(){
    this.select();
});
$jQ('css_id_value').focus();

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

与往事干杯 2024-12-10 14:42:54
$('#foo').focus(function() {
    if (this.setSelectionRange) {
        this.setSelectionRange(this.value.length, this.value.length);
    } else if (this.createTextRange) {
        // IE
        var range = this.createTextRange();
        range.collapse(true);
        range.moveStart('character', this.value.length);
        range.moveEnd('character', this.value.length);
        range.select();
    }
});
$('#foo').focus(function() {
    if (this.setSelectionRange) {
        this.setSelectionRange(this.value.length, this.value.length);
    } else if (this.createTextRange) {
        // IE
        var range = this.createTextRange();
        range.collapse(true);
        range.moveStart('character', this.value.length);
        range.moveEnd('character', this.value.length);
        range.select();
    }
});
呆头 2024-12-10 14:42:54

http://jsfiddle.net/hn8EY/

$("input").mouseup(function(){
    this.selectionStart = this.value.length;
    this.selectionEnd = this.value.length;
});

应该可以做到。

或者(因为我不知道你在这里追求什么:P)

$("input").mouseup(function(){
    if($(this).not(".c").length) {
        this.selectionStart = this.value.length;
        this.selectionEnd = this.value.length;
        $(this).addClass("c");
    }
}).blur(function(){
    $(this).removeClass("c");
});

http://jsfiddle.net/hn8EY/

$("input").mouseup(function(){
    this.selectionStart = this.value.length;
    this.selectionEnd = this.value.length;
});

that should do it.

and alternatively (because I have no clue what your after here :P)

$("input").mouseup(function(){
    if($(this).not(".c").length) {
        this.selectionStart = this.value.length;
        this.selectionEnd = this.value.length;
        $(this).addClass("c");
    }
}).blur(function(){
    $(this).removeClass("c");
});
暮年 2024-12-10 14:42:54

使用下面的代码:

var FieldInput = $('#fieldName');
var FldLength= FieldInput.val().length;
FieldInput.focus();
FieldInput[0].setSelectionRange(FldLength, FldLength);

希望这对您有帮助

Use below code:

var FieldInput = $('#fieldName');
var FldLength= FieldInput.val().length;
FieldInput.focus();
FieldInput[0].setSelectionRange(FldLength, FldLength);

Hope this help for you

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文