开发者

Get selected text in a textbox

How can I get the 开发者_运维技巧character positions of the selected text in an HTML <input> textbox element? window.getSelection() doesn't work inside textboxes.


If you're using jQuery, take a look at the jQuery Caret plugin: jCaret

// Get start pos in intput box with id="box1"
$("#box1").caret().start

// Get end pos
$("#box1").caret().end

// Get selected text
$("#box1").caret().text


........

<script language=javascript>
function getSelText()
{
    var txt = '';
     if (window.getSelection)
    {
        txt = window.getSelection();
             }
    else if (document.getSelection)
    {
        txt = document.getSelection();
            }
    else if (document.selection)
    {
        txt = document.selection.createRange().text;
            }
    else return;
document.aform.selectedtext.value =  txt;
}
</script>

<input type="button" value="Get selection" onmousedown="getSelText()"> 

<form name=aform >
<textarea name="selectedtext" rows="5" cols="20"></textarea>
</form>

Reference: http://www.codetoad.com/javascript_get_selected_text.asp


In case you don't need to support really old versions of Internet Explorer, just use the element's selectionEnd and selectionStart properties.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜