• ベストアンサー

表内の改行について

DBに登録されているデータをテーブルに表示しています。 登録はフォームの<TEXTAREA>で行っているのですが、登録する人 によって、途中で改行が入っていたり、改行せずにずらーっと長い データになっていたりいろいろです。これを、「改行の入っている ものはそれなりに」「改行の入っていないものはセルの幅で改行」 というようにできないでしょうか? 内容は主に日本語の文章です。 前者を実現するために<TD><PRE>~</PRE></TD>とやったら、前者 は上手くいくのですが、後者の場合、ひたすら横長に表示されて、 表が崩れてしまいます。何かいい方法がありましたら教えて下さい。

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

  • ベストアンサー
  • yuizuian
  • ベストアンサー率42% (103/245)
回答No.1

DBを操作するのに何を使ってらっしゃるのかわからないのですが、 セルの幅は<TD WIDTH=200>等で指定して、改行されているものは改行コードを<BR>タグに置き換えることで mayurinさんのご希望どおりに動作させることがかのうですよ。 改行コードは、ASPならvbCrLf、PHP\r\nと\r、\nです。

mayurin
質問者

お礼

お返事ありがとうございました。 <TD width=xxx>を指定して、vbCrLfを<BR>に置き換えることで上手く いきました。大変助かりました。

その他の回答 (1)

  • xruz
  • ベストアンサー率50% (72/143)
回答No.2

こんばんはmayurinさん、xruzです。 <textarea>タグにはwrapというパラメータがあります。 wrap="off" →自動改行しない wrap="hard" →表示も送信も自動改行される wrap="soft" →表示は自動改行されるが送信は自動改行されない それぞれのパラメータで試されてはいかがでしょうか? hardはphysical、softはvirtualでも構いませんよ(こちらのほうがイメージが湧きますね)。 既に試されていたらごめんなさい。

mayurin
質問者

お礼

お返事ありがとうございました。 最初から<TEXTAREA>にwrapを指定しておけばよかったのですね。 wrap="hard"を指定して登録してみると、上手くいきました。 今回は、既に登録されたデータもあるので、下の案と併用で 思い通りにできそうです。

関連するQ&A

専門家に質問してみよう