まず第一に、「メモ」を送信する準備が整うまで、サーバーに何も送信する必要はありません。説明したすべての編集は完全に JavaScript で行うことができます。
まず、現在選択されているテキストを取得できる必要があります。次のようなものを使用できます。
var memoBox = document.getElementById("memo"); //get the memo input element
var startIndex = memoBox.selectionStart, endIndex = memoBox.selectionEnd; //store the start and end of the user's selection
var selectedText = memoBox.value.substring(startIndex,endIndex); //retrieve and store the selected text
ここで、選択したテキストにリンクを追加するとします。次のような関数を書くことができます:
function addLinkToSelected() {
var memoBox = document.getElementById("memo");
var startIndex = memoBox.selectionStart, endIndex = memoBox.selectionEnd;
var selectedText = memoBox.value.substring(startIndex,endIndex);
var linkURL = prompt("Link target: "); //ask the user for a link target
var linkTag = '<a href="'+linkURL+'">'; //construct a link tag
memoBox.value = memoBox.value.substring(0,startIndex) + linkTag
+ selectedText + "</a>" + memoBox.value.substring(endIndex+1);
}
次に、ボタンを追加して、クリックされたときに関数を呼び出します。
<input type="button" value="add link" onclick="addLinkToSelected()" />
これがあなたが探しているものかどうか正確にはわかりませんので、お気軽に詳細を追加してください。実際の例を確認できるjsfiddleを作成しました。