アプリ版:「スタンプのみでお礼する」機能のリリースについて

ブログ等で利用されている、フォームのテキストにリンクをつけるjavascriptを教えてください。

(詳細)
フォームのテキストを選択し、ボタンを押すとURLを入力するwindowが開くjavascript

よろしくお願いします。

A 回答 (3件)

以下、サンプルです。


IE6とFirefox(いずれもWin版)では動きましたが、他のブラウザではどうかわかりません。


<html>
<head>
<title></title>

<script type="text/javascript">
<!--
function MakeAnchor(Oid){
var O = document.getElementById(Oid);
if(! O)return;

var Str;
if(document.selection){
Str = document.selection.createRange().text
} else if(O.selectionStart){
Str = O.value.substring(O.selectionStart,O.selectionEnd);
}
if(! Str) return;

var URL = prompt('URL:','http://');
if(! URL) return;

var SStr = '<a href="'+URL+'">'+Str+'<'+'/a>';

if(document.selection){
document.selection.createRange().text = SStr;
} else {
var SStart = O.selectionStart;
var SEnd = O.selectionEnd;
O.value = O.value.substring(0,SStart) + SStr +
O.value.substring(SEnd,O.value.length);
O.setSelectionRange(SStart,SEnd + SStr.length -Str.length);
O.focus();
}

}
//-->
</script>

</head>
<body>



<form>
<textarea id="TA01" cols=60 rows=10></textarea>
</form>
<input type="button" value="→&lt;A&gt;" onclick="MakeAnchor('TA01')">

</body>
</html>
    • good
    • 0

私も、ご質問の意味がちょっとよく解らなかったので推測ですが、


<INPUT TYPE="text">や<TEXTAREA>などテキストボックスの中で、たとえば「私のサイト」などという文字列を選択した状態で、ボタンをクリックするとURLを聞かれて入力し、その結果、「私のサイト」という部分がリンクテキストになった全文が完成する、というようなイメージですか?

URLを尋ねるウィンドウ(ダイアログボックス)を開くのは window.prompt() 文で可能なので、今選択中のテキストをjavascriptで取得する方法ですよね。

var txtR = document.selection.createRange();
alert(txtR.text);

で取得できると思います。
    • good
    • 0

すいませんが、もうちょっと詳しくお願いできないでしょうか?



>フォームのテキストを選択し、

このフォームのテキストというのは、
<INPUT TYPE="text">の事でしょうか?
それとも平文の事でしょうか?

また選択するというのはどういう事でしょう?
<INPUT TYPE="text">の場合はフォーカスを宛てる
(入力できる状態にする)という事ですか?
平文の場合は、ドラッグして色が反転している
状態の事でしょうか?

>ボタンを押すとURLを入力するwindowが開く

URLを入力するwindowというのはどういった物ですか?
通常のブラウザにはURL入力欄がありますが
そういった物ではなく、<INPUT TYPE="text">などに
入力するwindowの事でしょうか?
また、この開くwindowは選択したテキストと
どのような関係があるのでしょう?

以上お願いします。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!