0

我正在尝试使用 IE8 在 Input Text 元素中获取未选择的文本,我尝试了这个并且确实很有帮助,但是在没有选择文本的情况下,函数返回字符串的开始和结束的索引。

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

使用 jQuery 也会很有帮助。

4

1 回答 1

0

如果我正确理解了您的问题,您将需要以下内容:

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;
}
于 2012-07-24T19:52:27.507 回答