私はtextareaの文字列/テキストを高めようとしていて、それをカスタムタグの周りにラップしています。Javascript:テキスト領域のハイライトされた文字列を置き換えますか?
ハイライトされたテキストを簡単に取得できます。タグの周りをラップしてアラート()することはできますが、テキストエリア内で置き換えることはできません。
これは私の作業FIDDLE(https://jsfiddle.net/dftLu6ax/)
であり、これは私のJavascriptを/ jQueryのコードです:
$('#showSelected').on('click', function(){
function getInputSelection(elem){
if(typeof elem != "undefined"){
s=elem[0].selectionStart;
e=elem[0].selectionEnd;
return elem.val().substring(s, e);
}else{
return '';
}
}
var text = getInputSelection($("#details"));
var link = prompt("Please enter your URL", "");
if (link != null) {
var str = document.getElementById("details").value;
var res = str.replace(text, "<a onclick='somevariable goes here' href=''>"+text+"</a>");
alert(res);
/*document.getElementById("demo").innerHTML =
"Hello " + person + "! How are you today?";*/
}
});
と私のシンプルなHTML:
<input type="button" id="showSelected" value="Insert Link">
<textarea class="form-control" rows="5" id="details" name="details"></textarea>
は、誰かがこの上でアドバイスしてもらえます?
ありがとうございます。
この($# "詳細")val(res); 'を試してください。これは、テキストエリア内の選択されたテキストを、警告で表示しているテキストに置き換えます。 – Akshay
@Akshay、私は、テキストエリア内のテキスト全体を、私が強調したテキストに置き換えるつもりはありません! – Jackson