Как получить положение символов выделенного текста в элементе текстового поля HTML <input>? window.getSelection() не работает внутри текстовых полей.
<input>
window.getSelection()
Если вы используете jQuery, взгляните на плагин jQuery Caret: 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>
Ссылка: http://www.codetoad.com/javascript_get_selected_text.asp
Если вам не нужно поддерживать действительно старые версии Internet Explorer, просто используйте свойства элемента selectionEnd и selectionStart.
selectionEnd
selectionStart