function getRangePos(obj){ var Pos = 0; //ie if (document.selection){ obj.focus(); var Sel = document.selection.createRange(); Sel.moveStart('character', -obj.value.length); Pos = Sel.text.length; }else if (obj.selectionStart || obj.selectionStart == '0'){ Pos = obj.selectionStart; } return Pos; } function setRangePos(obj, pos){ if (obj.setSelectionRange){ obj.focus(); obj.setSelectionRange(pos,pos); }else if (obj.createTextRange){ var range = obj.createTextRange(); range.collapse(true); range.moveEnd('character', pos); range.moveStart('character', pos); range.select(); } } function get_click(){ var obj = document.getElementById('soruce_id'); var pos = getRangePos(obj); document.getElementById('info').innerHTML = document.getElementById('info').innerHTML + 'Pos:' + pos + '\n'; obj.focus(); } function set_click(){ var obj = document.getElementById('soruce_id'); var num = document.getElementById('pos_num'); var numVal = parseInt(num.value); num.value = numVal; if (numVal > 0){ setRangePos(obj, numVal); } obj.focus(); }