focus()只是把焦点移到具体控件上,它不能完成你说的精确定位

解决方案 »

  1.   

    要你说的精确定位,得自己写函数.<SCRIPT  language=javascript>     
    function moveAtCaret(obj,n){ 
    obj.focus(); 
    var rng=document.selection.createRange(); 
    rng.moveStart("character", n); 
    rng.select(); 

    </SCRIPT> 
    <input id =show value="12345"><p> 
    <input type=button value="Move" onclick=moveAtCaret(show,3)>
      

  2.   

    光标定位到输入框上的具体位置
    获取当前位置,并在当前光标插入呢?<input value=12345 id="bao"> 
    <input type="button" value="Get" onclick="getCaretPos(bao)"> 
    <input type="button" value="Move" onclick="moveAtCaret(bao,3)">
    <script language="javascript"> 
    function moveAtCaret(obj,n){ 
    obj.focus(); 
    var rng=document.selection.createRange(); 
    rng.moveStart("character", n); 
    rng.select(); 

    function getCaretPos(obj){ 
    obj.focus(); 
    var workRange=document.selection.createRange(); 
    var allRange=obj.createTextRange(); 
    workRange.setEndPoint("StartToStart",allRange); 
    len=workRange.text.length; 
    alert(len)
    }
    </script>