永发信息网

RT 将textarea 中的文本选中后 按下一个button 实现 替换效果~~~~~

答案:1  悬赏:50  手机版
解决时间 2021-02-09 13:27
js 实现 替换选中的文本
最佳答案
&lt;script&gt;<br>  function setCaret(){<br>   if(this.createTextRange){<br>    this.caretPos=document.selection.createRange().duplicate();<br>   }<br>  };<br><br>//保存当前光标位置,并且插入当前位置<br>  function insertAtCaret(textObj,textFeildValue){<br>   if(document.all){//ie<br>    if(textObj.createTextRange&amp;&amp;textObj.caretPos){<br>    var caretPos=textObj.caretPos;<br>    //alert(caretPos.text)<br>    caretPos.text=caretPos.text.charAt(caretPos.text.length-1)==''?textFeildValue+'':textFeildValue;<br>    caretPos.select();<br>    }else {<br>    textObj.value=textFeildValue;<br>    }<br>   }else {//ff<br>    if(textObj.setSelectionRange){<br>    var rangeStart=textObj.selectionStart;<br>    var rangeEnd=textObj.selectionEnd;<br>    var oldScrollTop = textObj.scrollTop;<br>    var oldScrollHeight = textObj.scrollHeight;<br>    var oldLen = textObj.value.length;<br>    var tempStr1=textObj.value.substring(0,rangeStart);<br>    var tempStr2=textObj.value.substring(rangeEnd);<br>    textObj.value=tempStr1+textFeildValue+tempStr2;<br>    textObj.selectionStart = textObj.selectionEnd = rangeStart + textFeildValue.length;<br>    if (textObj.value.length == oldLen) {<br>    textObj.scrollTop = textObj.scrollHeight;<br>    } else if (textObj.scrollHeight &gt; oldScrollHeight) {<br>    textObj.scrollTop = oldScrollTop + textObj.scrollHeight - oldScrollHeight;<br>    } else {<br>    textObj.scrollTop = oldScrollTop;<br>    }<br>    }else {<br>    alert(&quot;xxxxx&quot;);<br>    }<br>   }<br>  }<br>&lt;/script&gt;<br><br>&lt;textarea id=&quot;oTextArea&quot; onselect=&quot;setCaret()&quot; onclick=&quot;setCaret()&quot; onkeyup=&quot;setCaret()&quot;&gt;bbbbb&lt;/textarea&gt;&lt;input type=&quot;button&quot; onclick='insertAtCaret(document.getElementById(&quot;oTextArea&quot;),&quot;iii&quot;)' value=&quot;replace&quot;/&gt;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
宝马Z4开起来有轰鸣声吗?
衡水十四中怎么样
十二地支五行属什么
泡泡堂怎么使用小键盘
人生中的一大败笔的败笔两个字是什么意思?
图所示,①②③三地都位于回归线附近,有关三
123456x5巧算长乀卜,乀s,忄七星弋
荣联网域新联综合服务店地址在哪,我要去那里
南方地区在全国占重要地位的矿产资源是A.煤和
我们平时用电都靠铁塔架空高压线传电,可是我
甲公司授权其业务员张某购买一批建材,甲公司
劳动成果恳谈会的作文三百字
在玩xbox360版《上古卷轴5:天际》也不知道按
CIRCLE怎么去啊,有知道地址的么
使命召唤4重制版为什么那么大
推荐资讯
东莞常平适合办婚宴的饭店或酒店?
花子早餐店怎么去啊,有知道地址的么
九鼎科技怎么样
急求钢铁与橡胶的摩擦系数,
如何找律师帮助公司规避企业的风险,而且要避
用数字9到1组成100
中国银行24小时自助银行(新五大道)怎么去啊,
外交人员北戴河宾馆(分部28号楼)地址在什么
耳塞里为什么会有磁石?
QQ星童衣馆我想知道这个在什么地方
花生叶能帮助睡眠
-273度,被定义绝对温度,月球背面的温度。我
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?