当前位置:  开发笔记 > 编程语言 > 正文

selectionStart-End with textareas

如何解决《selectionStart-Endwithtextareas》经验,为你挑选了2个好方法。

我有这个烦人的问题,我似乎无法在textarea中获取所选文本的起始和结束索引,我得到的所有内容都是这样的:

$('#myarea').selectionStart; // return undefined

我做错什么了吗?



1> Paolo Bergan..:

尝试:

$('#myarea')[0].selectionStart;

为什么?jQuery选择器不返回实际的DOM元素,而是返回包装的jQuery集合.jQuery使实际的DOM元素可以作为一个数组访问,所以如果你想使用第一个匹配的元素(在这种情况下,只有一个,因为它是由ID),你可以做到这一点.


神圣的垃圾有用的晦涩知识!谢谢
这是我早上JS拼图的最后一部分.先生,你是一个救生员!顺便说一句,对于任何想要使用它来自动替换输入字段中的某些字符同时保持插入位置的人:记住也要将[0]应用到"setSelectionRange".

2> Tân..:

从jQuery 1.6开始,你可以使用.prop()方法:

得到:

// always start at 0

var start = $('#myarea').prop('selectionStart');
var end = $('#myarea').prop('selectionEnd');

组:

$('#myarea').prop('selectionStart', 10);
$('#myarea').prop('selectionEnd', 15);

// or short hand by

$('#myarea').prop({
    'selectionStart': 10,
    'selectionEnd': 15
});

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有