其实这个算法的核心就是获取input中光标的位置,我以前曾经参考过一篇文章,实现类似的功能,你可以参考下,稍加修改就能完成你的要求。
http://bbs.blueidea.com/thread-2794774-1-1.html
http://bbs.blueidea.com/thread-2794774-1-1.html
解决方案 »
- 初学sencha touch,1个基本问题,多个按钮调用同一个方法的问题
- JS绘图方面有哪些?
- DSOFramer 页面显示问题
- 求助,JS抽奖程序让结果不重复
- js能否给参数设置默认值?如test(hello="1");
- iReport 柱形图 Jasperreport
- 十万火急 在线等待! 网也被<script></script>和<iframe></ifame>挂木马!!!
- "完成该操作所需的数据还不可用"?是什么错误啊?
- window.showModalDialog的问题!
- 页面上有个按钮,用户点一下,就给生成一个text框,再点再生成?请大虾代码示例!谢谢!
- 如何检测当前浏览器是否支持Cookie?
- 大家来给我点建议好吗?
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script language="javascript">
var sel ;
function getFocus(){
sel=document.selection.createRange();
sel.setEndPoint("StartToStart",document.getElementById("aa").createTextRange());
}
function deletLast() //删除光标后的文本
{
//把光标前的文本赋值给文本
document.getElementById("aa").value = sel.text}
function deletBefore() //选中文本框中光标后的本不
{
var m=sel.text.length;//光标所在位置
sel.moveStart('character',m);//移动开始点,-m标示当前光标位置前面m个字符处
sel.moveEnd('character',aa.value.length);//移动结束点,0标示当前光标位置
sel.select();//选中开始点到结束点间的字符 var last = document.selection.createRange().text
//把光标后的文本赋值给文本
document.getElementById("aa").value = last ;}
</script>
</HEAD><BODY><input id="aa" type=text onclick=getFocus() value=sdklfjsldjf>
<input type="button" value="删除光标前面的值" onclick="deletBefore()">
<input type="button" value="删除光标后面的值" onclick="deletLast()"></BODY>
</HTML>