JavaScript キャレット位置に文字を挿入する
http://oshiete.goo.ne.jp/qa/8007638.html
「JavaScript テキストエリア内のカーソル位置に文字を入力する方法」
乱暴だが、Fxなら。てもとにIEが無い!後で勉強しよう
http://domes.lingua.heliohost.org/dom/intro-ranges1.html#section-1-5-2
<! DOCTYPE html> <title></title> <meta charset="UTF-8"> <body> <textarea cols="60" rows="10"> あいうえお かきくけこ さしすせそ </textarea> <p> <script> var txa = document.querySelector ('textarea'); var btn = document.createElement ('input'); btn.type = 'button'; 'abcdefghijklmnopqrstuvwxyz' .split ('') .map (function (c, b) { return (b = this.cloneNode (false), b.value = c, b); }, btn) .forEach (function (b) { this.appendChild (b); }, document.querySelector ('p')); document.addEventListener ('click', function (v,e) { if (e=v.target, e.type == 'button') insertChar (e.value); },false); function insertChar (c) { var s = txa.selectionStart, v = txa.value; txa.value = v.substr(0, s) + c + v.substr(s, v.length); txa.focus (); txa.setSelectionRange(++s,s); } </script>