< script language = Javascript > function AddOnPos(obj, charvalue){ // obj代表要插入字符的输入框 // value代表要插入的字符 obj.focus(); var r = document.selection.createRange(); var ctr = obj.createTextRange(); var i; var s = obj.value; // 注释掉的这种方法只能用在单行的输入框input内 // 对多行输入框textarea无效 // r.setEndPoint("StartToStart", ctr); // i = r.text.length; // 取到光标位置----Start---- var ivalue = " &^asdjfls2FFFF325%$^& " ; r.text = ivalue; i = obj.value.indexOf(ivalue); r.moveStart( " character " , - ivalue.length); r.text = "" ; // 取到光标位置----End---- // 插入字符 obj.value = s.substr( 0 ,i) + charvalue + s.substr(i,s.length); ctr.collapse( true ); ctr.moveStart( " character " , i + charvalue.length); ctr.select();} </ script > 虽然可以实现功能,但是没有完全看明白 希望哪位高人可以给解释一下