このコード スニペットを使用して<br/>
、jquery のタグを「\n」(改行) に置き換えます。しかし、それはうまくいきませんでした
$("#UserTextArea").html(data.projectDescription).replace(/\<br\>/g, "\n");
しかし、うまくいかなかったのはなぜですか?
このコード スニペットを使用して<br/>
、jquery のタグを「\n」(改行) に置き換えます。しかし、それはうまくいきませんでした
$("#UserTextArea").html(data.projectDescription).replace(/\<br\>/g, "\n");
しかし、うまくいかなかったのはなぜですか?
.replace()
内容自体は変わりません。新しい文字列を返すため、その新しい文字列を使用する場合は、.replace()
どこかからの戻り値を配置する必要があります。
<br\>
\ をエスケープしてオプションにすることでターゲットを設定している場合は、正規表現を修正する必要がある場合もあります。
参考までに、HTML では a\n
は何もしないので、 内のすべての<br>
タグを削除しようとしている場合#UserTextArea
は、DOM パーサーを使用してこれを行うことができます。
$("#UserTextArea br").remove();
<br>
または、タグ付きの文字列を別の目的で使用できる変数に置き換えたい場合は、次のようにします。
var str = $("#UserTextArea").html().replace(/\<br\\?>/g, "\n");
<br>
または、フォームを削除data.projectDescription
して HTML として割り当てる文字列である場合は#UserTextArea
、次のことができます。
$("#UserTextArea").html(data.projectDescription..replace(/\<br\\?>/g, "\n"));
$("#UserTextArea").html(data.projectDescription.replace(/\<br[\/]*\>/g, "\n"));
$('#UserTextArea').html(data.projectDescription.replace(/\<br\s*\>/g, '\n'));
または、要素の内部 HTML を検索して置換するには:
var $element = $('#UserTextArea');
var html = $element.html();
$element.html(html.replace(/\<br\s*\>/g, '\n'));