javascript在一段文字中的光标处插入其他文字


Posted in Javascript onAugust 26, 2007

例如:一个文本框里有一段文字,我要通过点击鼠标并且在相应的地方插入文本
我是这样做的:先获得文本框的值TextArea.Value,然后.TextArea.Value+其他文本

<script type="text/javascript">   
function setCaret(textObj){  
  if(textObj.createTextRange){    
    textObj.caretPos=document.selection.createRange().duplicate();    
  }  
}

function insertAtCaret(textObj,textFeildValue){  
  if(document.all){    
    if(textObj.createTextRange&&textObj.caretPos){      
      var caretPos=textObj.caretPos;      
      caretPos.text=caretPos.text.charAt(caretPos.text.length-1)==''?textFeildValue+'':textFeildValue;
    }else {      
      textObj.value=textFeildValue;      
    }    
  }else {    
    if(textObj.setSelectionRange){      
      var rangeStart=textObj.selectionStart;      
      var rangeEnd=textObj.selectionEnd;      
      var tempStr1=textObj.value.substring(0,rangeStart);      
      var tempStr2=textObj.value.substring(rangeEnd);      
      textObj.value=tempStr1+textFeildValue+tempStr2;      
    }else {      
      alert("This version of Mozilla based browser does not support setSelectionRange");      
    }    
  }  
}    
</script>   

<form id="form1" action="" onsubmit="" method="post" enctype="text/plain">     
<p>   
<textarea name="tarea" rows="" cols="" style="width:300px;height:120px;" onselect="setCaret(this);" onclick="setCaret(this);" onkeyup="setCaret(this);">
Dnew.cn  Dnew.cn
</textarea>   
<br/><br/>   
<input type="text" name="textfield" style="width:220px;" value="插入FireFox"/>   
<br/>   
<input type="button" value="插入" onclick="insertAtCaret(this.form.tarea,this.form.textfield.value);"/>   
</p>   
</form>   

Javascript 相关文章推荐
JS清除IE浏览器缓存的方法
Jul 26 Javascript
jquery $.each 和for怎么跳出循环终止本次循环
Sep 27 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
Nov 08 Javascript
JS使用正则表达式过滤多个词语并替换为相同长度星号的方法
Aug 03 Javascript
微信小程序之数据双向绑定与数据操作
May 12 Javascript
javascript 玩转Date对象(实例讲解)
Jul 11 Javascript
angularjs 获取默认选中的单选按钮的value方法
Feb 28 Javascript
JS装饰器函数用法总结
Apr 21 Javascript
详解如何配置vue-cli3.0的vue.config.js
Aug 23 Javascript
vue中对象数组去重的实现
Feb 06 Javascript
基于Web Audio API实现音频可视化效果
Jun 12 Javascript
webstorm建立vue-cli脚手架的傻瓜式教程
Sep 22 Javascript
有一段有意思的代码-javascript现实多行信息
Aug 26 #Javascript
LBS blog sql注射漏洞[All version]-官方已有补丁
Aug 26 #Javascript
javascript下操作css的float属性的特殊写法
Aug 22 #Javascript
ASP中用Join和Array,可以加快字符连接速度的代码
Aug 22 #Javascript
可以把编码转换成 gb2312编码lib.UTF8toGB2312.js
Aug 21 #Javascript
lib.utf.js
Aug 21 #Javascript
javascript实现上传图片前的预览(TX的面试题)
Aug 20 #Javascript
You might like
咖啡的传说和历史
2021/03/03 新手入门
YII实现分页的方法
2014/07/09 PHP
Smarty中的注释和截断功能介绍
2015/04/09 PHP
Yii实现的多级联动下拉菜单
2016/07/13 PHP
thinkPHP框架动态配置用法实例分析
2018/06/14 PHP
Laravel框架源码解析之入口文件原理分析
2020/05/14 PHP
做网页的一些技巧
2007/02/01 Javascript
超强的IE背景图片闪烁(抖动)的解决办法
2007/09/09 Javascript
jquery $.ajax相关用法分享
2012/03/16 Javascript
JavaScript作用域与作用域链深入解析
2013/12/06 Javascript
PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)
2015/08/06 Javascript
JavaScript判断图片是否已经加载完毕的方法汇总
2016/02/05 Javascript
javascript中的后退和刷新实现方法
2016/11/10 Javascript
Bootstrap简单表单显示学习笔记
2016/11/15 Javascript
如何让你的JS代码更好看易读
2017/12/01 Javascript
vue 验证两次输入的密码是否一致的方法示例
2020/09/29 Javascript
[01:18:33]Secret vs VGJ.S Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
使用python 获取进程pid号的方法
2014/03/10 Python
Python简单网络编程示例【客户端与服务端】
2017/05/26 Python
Python列表list解析操作示例【整数操作、字符操作、矩阵操作】
2017/07/25 Python
python 检查文件mime类型的方法
2018/12/08 Python
java判断三位数的实例讲解
2019/06/10 Python
Flask和pyecharts实现动态数据可视化
2020/02/26 Python
解决python运行效率不高的问题
2020/07/20 Python
Hotels.com拉丁美洲:从豪华酒店到经济型酒店的预定优惠和折扣
2019/12/09 全球购物
linux面试题参考答案(11)
2012/05/01 面试题
servlet面试题
2012/08/20 面试题
实习销售业务员自我鉴定
2013/09/21 职场文书
乡下人家教学反思
2014/02/01 职场文书
财务稽核岗位职责
2015/04/13 职场文书
2015年见习期个人工作总结
2015/05/28 职场文书
学校运动会加油词
2015/07/18 职场文书
三好学生主要事迹怎么写
2015/11/03 职场文书
2016教师六五普法学习心得体会
2016/01/21 职场文书
Python实现提取PDF简历信息并存入Excel
2022/04/02 Python
Python列表的索引与切片
2022/04/07 Python