【问题标题】:Get non selected text from a textbox in IE从 IE 中的文本框中获取非选定文本
【发布时间】:2012-07-25 04:22:35
【问题描述】:

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

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

使用 jQuery 也会很有帮助。

【问题讨论】:

  • 你想要哪一个?只是想知道是否选择了文本?
  • 当输入文本元素中有非选中文本时

标签: javascript jquery html internet-explorer cross-browser


【解决方案1】:

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

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;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-24
    • 2014-05-14
    相关资源
    最近更新 更多