本文介绍如何在JavaScript中实现向文本框(Textarea)的光标当前位置插入指定内容。通过获取文本框焦点及当前选区范围,判断是否有选中文字,并将新内容合并或替换后重新选中,该方法主要适用于旧版IE浏览器环境。
HTML结构与交互定义
<TEXTAREA ROWS="20" COLS="100" id='test'>123456798<B>123</B></TEXTAREA>
创建一个按钮,点击时触发_insertText函数并传入参数"abc"。
JavaScript插入逻辑实现
开始定义JavaScript脚本块。
<!--
定义名为_insertText的函数,接收参数A。
通过ID获取ID为test的元素对象,赋值给变量B。
使元素B获得焦点。
调用document.selection.createRange()方法获取当前选区对象,赋值给变量C。
判断变量C是否存在。
如果选区文本长度大于0,则将参数A追加到选区文本后。
否则,直接将选区文本设置为参数A。
调用C.select()方法重新选中修改后的文本范围。
}
}
//-->
结束脚本块定义。