例如:一个文本框里有一段文字,我要通过点击鼠标并且在相应的地方插入文本 我是这样做的:先获得文本框的值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>
推荐阅读
非常不错的三种简洁的Tab导航(网页选项卡)简析
在网页中应用选项卡可以使网页显得更紧凑,结合AJAX技术可以使页面在有限的空间内展现更多的内容。本文主要介绍几种简洁的选项卡效果的实现(不涉及滑动门和AJAX),附有实例,无图片,兼容性较好,方便大家直接使>>>详细阅读
本文标题:javascript在一段文字中的光标处插入其他文字
地址:http://www.17bianji.com/kaifa2/JS/30117.html
1/2 1