JavaScript实现向输入框光标位置插入指定文本

作者:微光时间:2026-10-27 14:50:20浏览:627

本文提供一段JavaScript代码,用于在文本输入域的光标所在位置插入指定字符串。代码兼容不同浏览器环境,处理了IE旧版与标准DOM的光标定位逻辑,确保插入后光标位置正确及滚动条状态保持。

JavaScript实现向输入框光标位置插入指定文本

具体实现代码如下:

 
<pre name="code" class="javascript">/**
* 向文本输入域的光标当前位置插入指定字符串
* @param $t 通过 document.getElementById('fieldId') 获取的输入元素对象
* @param myValue 需要插入到输入域中的字符串值
** 
function addSplitToField($t,myValue){
if (document.selection) {
$t.focus();
sel = document.selection.createRange();
sel.text = myValue;
$t.focus();
}else if($t.selectionStart || $t.selectionStart == '0') {
var startPos = $t.selectionStart;
var endPos = $t.selectionEnd;
var scrollTop = $t.scrollTop;
$t.value = $t.value.substring(0, startPos) + myValue + $t.value.substring(endPos, $t.value.length);
this.focus();
$t.selectionStart = startPos + myValue.length;
$t.selectionEnd = startPos + myValue.length;
$t.scrollTop = scrollTop;
}else{
$t.value += myValue;
$t.focus();
} 
} 
</pre><br><br>
作者最新文章