<html>
    <body>
        <a href="javascript:void(0)" onclick="modify_text()">change</a><br />
        <textarea id="_txt" style="width: 100%;height: 80%">abcdefghijklmnopqrstuvxyz</textarea>
        <script type="text/javascript">
function modify_text() {
    var _obj = document.getElementById("_txt");

    // テキストが選択されているスタート部分の位置を取得
    var _start = _obj.selectionStart;

    // テキストが選択されているエンド部分の位置を取得
    var _end = _obj.selectionEnd;

    // スタート位置以前の部分の値を取っとく
    var _bef = _obj.value.slice(0, _start);

    // 選択されている部分の値を取得
    var _ctr = _obj.value.slice(_start, _end);

    // 上記以外の部分の所を取得
    var _aft = _obj.value.slice(_end);

    if(_start != _end) {
        // 選択されている所にタグを挿入する
        _obj.value = _bef + "<a>" + _obj.value.slice(_start,_end) + "</a>" + _aft;
    }
}
        </script>
    </body>
</html>