JS在文本框光标处插入文本


function insertAtCaret(areaElement,textFeildValue){
        var textObj = areaElement;
        
        // 兼容不支持 selectionStart 浏览器
        if(document.all && textObj.createTextRange && textObj.caretPos){
            var caretPos=textObj.caretPos;
            caretPos.text = caretPos.text.charAt(caretPos.text.length-1) == '' ?
            textFeildValue+'' : textFeildValue;
        }
        else if(textObj.setSelectionRange){
            var rangeStart=textObj.selectionStart;
            var rangeEnd=textObj.selectionEnd;
            var tempStr1=textObj.value.substring(0,rangeStart);
            var tempStr2=textObj.value.substring(rangeEnd);
            textObj.value=tempStr1+textFeildValue+tempStr2;
            textObj.focus();
            var len=textFeildValue.length;
            textObj.setSelectionRange(rangeStart+len,rangeStart+len); // 移动光标到添加内容之后
        }
        else {
            textObj.value+=textFeildValue;
        }
        return true;
    }
posted on 2016-03-12 09:23  桃狗屎  阅读(1240)  评论(0编辑  收藏  举报