将文本随意插入网页表单的 textarea

原作者:我佛山人出处:5D多媒体


在网页表单的<textarea>中,我们有时候需要将文本插入到光标所在的地方,或是替换掉选区内的文字。这时候,用普通的.value+="text"就无能为力了。下面这段测试代码可以解决这个问题,供大家参考:
function getActiveText() {
obj.currPos = document.selection.createRange().duplicate()
//对象自定义属性currPos为文档中当前激活选中区被建立的TextRange对象的副本
}
function AddText(str) {
if (obj.currPos)
//如果对象obj存在属性currPos
obj.currPos.text=str
//设置对象obj当前激活选中区被建立的TextRange对象的文本为参数str的值
//实现在光标位置插入参数str的值或者用参数str的值来替换选中区文本

else obj.value+=str
//如果对象obj的自定义属性currPos不存在
//直接把参数str的值添加到对象obj的值后面

}
</script>
<textarea id="obj" οnfοcus="getActiveText()" οnchange="getActiveText()"></textarea>
<button onClick="AddText('中文')">AddText</button>
<button onClick="AddText('English')">AddText</button>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值