从IE中的文本框中获取未选中的文本

Get non selected text from a textbox in IE

本文关键字:文本 获取 IE      更新时间:2024-02-25

我正试图使用IE8在Input text元素中获取未选中的文本,我尝试过,这真的很有帮助,但在文本未选中的情况下,函数会返回字符串开始和结束的索引。

如何获取输入文本元素的未选中文本,或者如何知道何时没有选中文本?

使用jQuery也会很有帮助。

如果我正确理解了你的问题,你需要这样的东西:

function getNonSelectedText(){
    var elem=document.getElementById('input');
    var selection=document.selection;
    var range=selection.createRange();
    if(range.boundingWidth<1){
        return elem.value;
    }
    var rangePre=range.duplicate();
    rangePre.moveToElementText(range.parentElement());// For <textarea>
    // rangePre.expand('textedit'); // For <input type=text>
    var rangePost=rangePre.duplicate();
    rangePre.setEndPoint('EndToStart',range);
    rangePost.setEndPoint('StartToEnd',range);
    return rangePre.text+rangePost.text;
}