- ベストアンサー
テキストエリア内へボタン(リンク)によるテキスト挿入
テキストエリア内へボタン(リンク)によるテキスト挿入 http://lumber-mill.co.jp/gallery/view/portfolio/yosei/js/insert_text 上記urlのテキストエリア内へボタン(リンク)によるテキスト挿入ですが、 同じように1つだけ(<br/>)だけの挿入はできるようになったのですが、 これを複数設置したい場合の設置方法を教えてください。 ただいくつもコピーすればいいのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
検証してみました。 おおむねOKです。 n1.href="javascript:insertBr("+i+","+j+",'XXX')"; ですね。それから、 p.insertBefore(n2,e); は最後に1回にした方がよいですね。
その他の回答 (1)
- yyr446
- ベストアンサー率65% (870/1330)
スクリプトの var n1 = document.createElement("a"); (A) n1.href="javascript:insertBr("+i+","+j+")"; n1.style.fontSize="x-small"; (B) n1.appendChild(document.createTextNode("カーソル位置で改行")); var n2 = document.createElement("br"); p.insertBefore(n1,e); p.insertBefore(n2,e); の部分を繰り返すのですが(A)の部分で、挿入する文字を指定するようにします。 n1.href="javascript:insertBr("+i+","+j+",<br />)"; みたいに。 (B)の部分が何を挿入するかのキャプションセットです。 n1.appendChild(document.createTextNode("カーソル位置で××")); 関数insertBr()は、下↓のようにします。 function insertBr(i,j,tag){ var ta = document.forms[i].elements[j]; if(navigator.userAgent.indexOf("MSIE") != -1){ ta.focus(); var s = document.selection.createRange(); s.text = tag; }else{ var p = ta.selectionStart; var s1 = ta.value.substr(0, p); var s2 = ta.value.substr(p, ta.value.length); ta.value = s1 + tag + s2; } }
お礼
ありがとうございました。