Для этого существует множество плагинов jQuery. Вот хороший, который я использовал раньше:
http://plugins.jquery.com/project/a-tools
Чтобы получить текущее местоположение курсора в текстовой области:
$("textarea").getSelection().start;
Чтобы получить текущий выбор в текстовой области:
$("textarea").getSelection();
возвращает объект, подобный этому:
{
start: 1, // where the selection starts
end: 4, // where the selection ends
length: 3, // the length of the selection
text: 'The selected text'
}
Чтобы вставить текст в текущую позицию курсора:
$("#textarea").insertAtCaretPos("The text to insert");
Чтобы заменить текущий выбор другим текстом:
$("#textarea").replaceSelection('This text will replace the selection');