入力テキストボックスの値を置き換えようとしたときに、最初の値だけを置き換え、全体の会話を置き換えないときにみんな。Find&Replace not working
私は会話が私が唯一prefix_agoを交換したいユーザー1人のPrefix_ago ユーザー2 Prefix_ago ユーザー1 Prefix_ago
のように見える持っ入力テキストボックスに
:
function copy() {
var text = document.getElementById('result1').value;
document.getElementById('id1').innerHTML = text;
$('#id1').each(function() {
var text = $(this).text();
$(this).text(text.replace('prefix_ago', ' : '));
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea class="result" id="result1" rows="10" cols="150" style="font-size:11px;resize: none; width:225px;"></textarea>
<button class="btn58" id="btn" onClick="copy()"> Copy & Replace</button>
<div id="id1">
</div>
私はPrefix_ago
と呼ばれる値を持っています。私の段落で何度も繰り返しています。帽子をコロン ":"そのコードは動作していますが、段落全体ではなく最初の値だけを置き換えます
可能な重複は、[JavaScriptで文字列のすべての出現を交換する方法は?](https://stackoverflow.com/questions/1144783/how-to- – mrogers
1つの要素( '#id1')をループするのに' .each() 'を使っているのはなぜですか?その要素に直接アクセスしてください。 –
'string.replace(str、str)'実際には、 'string.replace(regex、str)'とは異なり、最初の出現箇所のみを置き換えます。 ↑↑ちょうど2つのコメントをリンクした質問の最初の答えはかなり包括的です。 – Boris