javascript – 如何在textarea中选择文本行
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 如何在textarea中选择文本行,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1316字,纯文字阅读大概需要2分钟。
内容图文
![javascript – 如何在textarea中选择文本行](/upload/InfoBanner/zyjiaocheng/709/50f8746470f644fb8d0bd31171ba6055.jpg)
我有一个textarea,用于存放大量的SQL脚本进行解析.当用户单击“Parse”按钮时,他们将获得有关SQL脚本的摘要信息.
我希望摘要信息是可点击的,这样当点击它时,SQL脚本的行在textarea中突出显示.
我已经在输出中有行号,所以我需要的是javascript或jquery,告诉它要突出显示哪个textarea行.
是否有某种类型的“goToLine”功能?在我所有的搜索中,没有什么能解决我正在寻找的问题.
解决方法:
此函数要求第一个参数引用您的textarea,第二个参数作为行号
function selectTextareaLine(tarea,lineNum) {
lineNum--; // array starts at 0
var lines = tarea.value.split("\n");
// calculate start/end
var startPos = 0, endPos = tarea.value.length;
for(var x = 0; x < lines.length; x++) {
if(x == lineNum) {
break;
}
startPos += (lines[x].length+1);
}
var endPos = lines[lineNum].length+startPos;
// do selection
// Chrome / Firefox
if(typeof(tarea.selectionStart) != "undefined") {
tarea.focus();
tarea.selectionStart = startPos;
tarea.selectionEnd = endPos;
return true;
}
// IE
if (document.selection && document.selection.createRange) {
tarea.focus();
tarea.select();
var range = document.selection.createRange();
range.collapse(true);
range.moveEnd("character", endPos);
range.moveStart("character", startPos);
range.select();
return true;
}
return false;
}
用法:
var tarea = document.getElementById('myTextarea');
selectTextareaLine(tarea,3); // selects line 3
工作范例:
内容总结
以上是互联网集市为您收集整理的javascript – 如何在textarea中选择文本行全部内容,希望文章能够帮你解决javascript – 如何在textarea中选择文本行所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。