• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:テキストエリアで読み込んだら<br>が表示されてしまう)

テキストエリアで読み込んだら<br>が表示されてしまう

このQ&Aのポイント
  • テキストエリアで読み込んだ際、<br>が表示されてしまう問題が発生しています。
  • 登録フォームの中には「登録」と「編集」のプログラムがありますが、<br>が含まれる場合に編集フォームで表示されてしまいます。
  • 現在、<br>を表示せずに手動で改行できるような方法を探しています。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

#1です。 変数「p_comment」を使用しているのは「登録」の方だったんですね。 「編集」のほうでは「p_comment」を使っていないのなら、確かに#3で回答した方法ではダメです(汗) Response.Write "<textarea name='textname'cols=35 rows=3 wrap=hard>" & Replace(rs.Fields.Item("hp_comment"),"<BR>",Chr(13) & Chr(10)) & "</textarea>" 上記の方法になると思います。フィールド「hp_comment」の内容を、BRタグを改行文字に置き換えてテキストエリアに表示します。 今度こそ上手く行きますように(-人-)

natagoo
質問者

補足

ああ…!有り難うございます(涙)これで<br>が表示されなくなりました。 編集フォームの<br>の表示はこれで完了したのですが、編集し終わったあとに「表示」ページを見ると 改行がされてませんでした(汗) これは<br>に戻さないといけない、ということでしょうか?

その他の回答 (4)

回答No.5

#1です。 >編集フォームの<br>の表示はこれで完了したのですが、編集し終わったあとに「表示」ページを見ると >改行がされてませんでした(汗) >これは<br>に戻さないといけない、ということでしょうか? 改行文字の使い分けは、下記のようになります。 ・通常のHTML画面上での改行…BRタグ ・テキストエリア内での改行…Chr(13)&Chr(10) なので、「表示」画面に表示する時点で、BRタグではなくなっているということですね。 「編集」のページの内容をmdbに更新するときに、「登録」ページで行っているのと同様にBRタグに変換する処理を入れるとよいと思います。

natagoo
質問者

お礼

いろいろとおしえていただいてありがとうございました! もっと頑張って勉強していきます!

回答No.3

#1です。たびたび失礼いたします。 >Response.Write "<textarea name='textname'cols=35 rows=3 wrap=hard>" & rs.Fields.Item("hp_comment") & "</textarea>" こちらを見ますと、現状では、テキストエリアにはレコードセットの「hp_comment」というアイテムを表示しているようですね。 >こちらは、mdbには"comment"とテーブルに書いてるのですが変数でp_commentとしているので、これはp_commentでいいということでしょうか…。 とのことなので、BRタグを含んでしまっている文字列は変数p_commentに格納されているということですね。 そうしましたら、下記の方法が良いかと思います。 Response.Write "<textarea name='textname'cols=35 rows=3 wrap=hard>" & Replace(p_comment,"<BR>",Chr(13) & Chr(10)) ,& "</textarea>" レコードセット内の「hp_comment」を表示させる代わりに、変数「p_comment」を、BRタグを改行文字に置き換えたうえで表示させます。 #1では、テキストエリアに表示させる文字列は一度変数にセットしているとの思い込みでソースを提示してしまい、混乱させてしまったようですみません。上記の方法でうまくいくとよいのですが。

natagoo
質問者

お礼

turtlemachさん、ご丁寧に有り難うございます。 …また質問です(汗) 'Response.Write "<textarea name='TA1'cols=35 rows=3 wrap=soft>"& rs.Fields.Item("hp_comment") &"</textarea>" 編集フォームなので、上記↑↑のようにフィールドで一度記録したものを呼び出しているんです。が、turtlemachに教えていただいた もの↓↓ Response.Write "<textarea name='textname'cols=35 rows=3 wrap=hard>" & Replace(p_comment,"<BR>",Chr(13) & Chr(10)) ,& "</textarea>" で記述すると、読み込みができないのですが、読み込み方法はどのようにしたらよろしいのでしょうか。 ご迷惑おかけいたしておりますが、よろしくお願いしたします。。。

natagoo
質問者

補足

作っている機能は編集フォームのほかに登録フォームと その登録したものを反映させる表示ページがあるんですが 登録フォームでは、テキストエリアに p_comment = Replace(p_comment,Chr(13) & Chr(10), "<BR>") と、設定をしました。これで表示ページで改行のところはうまく行っています。 登録のところでp_commentを使っているので、編集のところもp_commentは間違いないと思います。

回答No.2

#1です。 今さらかもしれませんが、確認させていただけますでしょうか。 >str = Replace(txt,"<BR>",Chr(13) & Chr(10)) >でやってみたのですが、テキストエリアの中は何も >かわりませんでした・・・。 上記の「str」はテキストエリア内で表示させる文字列、「txt」はmdbに格納されている文字列の変数に書き換えて使用されましたでしょうか?

natagoo
質問者

お礼

ご丁寧に有り難うございます。 >「str」はテキストエリア内で表示させる文字列 ということですが、テキストエリア内で表示させる文字列とはどういうことでしょうか・・。 すいません、こんな質問してしまって。 テキストエリアに指定している"名前"ではないですよね(^^;) >「txt」はmdbに格納されている文字列の変数に書き換えて使用されましたでしょうか? こちらは、mdbには"comment"とテーブルに書いてるのですが変数でp_commentとしているので、これはp_commentでいいということでしょうか…。 わかりにくくて申し訳ございません。

natagoo
質問者

補足

Response.Write "<textarea name='textname'cols=35 rows=3 wrap=hard>" & rs.Fields.Item("hp_comment") & "</textarea>" テキストエリアはこんな感じで設定しています。

回答No.1

>hp_comment = Replace(hp_com,Chr(13) & Chr(10),"<br>")& vbCrLf 「登録」時には上記のように、改行文字をBRタグに変換しているわけですから、 「編集」のほうでは反対に、BRタグを改行文字に変換すればよいのではないでしょうか? str = Replace(txt,"<BR>",Chr(13) & Chr(10)) …できれば、「登録」時は変換をかけずにそのままmdbに登録し、表示するときにのみBRタグへ変換するほうがスマートかな、と思います。

natagoo
質問者

お礼

早速のご回答有り難うございます。 str = Replace(txt,"<BR>",Chr(13) & Chr(10)) でやってみたのですが、テキストエリアの中は何も かわりませんでした・・・。

関連するQ&A