人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

( PHP, Smarty, Javascript )テキストエリアの改行について

Ajaxでテキストエリアに入力した値を、フォーカスが離れたタイミングで、隣のラベルに表示する。という処理を作りました。
ラベルに表示されたときに改行が付きませんでした。
なのでJS内に

input = input.replace(/\r\n/g, "<br />");
input = input.replace(/(\n|\r)/g, "<br />");
$label.val(input);

と記述してラベルに表示しようとしましたが、
ラベルの表示は
「あ<br />あ<br />あ」とエスケープされた状態で表示されてしまいました。

改行を反映させるためには、どう書いたら良いのでしょうか


●質問者: timestep
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

質問者から

$label.val(input);は
$("#label").text(input);の間違いです


1 ● rouge_2008
●100ポイント ベストアンサー

jQueryでしょうか?
「text(val)」ではHTMLはエスケープされますので、「html(val)」を使います。

input = input.replace(/\r?\n/g, "<br />");
$("#label").html(input);

http://semooh.jp/jquery/api/attributes/text/val/
http://semooh.jp/jquery/api/attributes/html/val/

※「text(val)」は「innerText」、「html(val)」は「innerHTML」に相当します。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ