2009-07-24 59 views
0

我剛更新了一個頁面,以在asp.net中使用DetailsView。它包含一個MultiLine文本框,該文本框現在位於詳細信息視圖的EditItemTemplate中。問題是,當輸出這個數據(存儲在數據庫中)時,我用< br/>替換了vbCrLf(一個新的行包含 - > VB,回車,換行),這在以前工作正常,但現在它是在詳細視圖中,它像vbCrLf不存在和替換後(str,vbCrLf,「< br/>」),而不是HTML中斷(< br/>),其中文本框包含換行符,它只顯示在一行中。我怎樣才能解決這個問題?謝謝。DetailsView中的textarea中的換行符(asp.net)

回答

1

試試看Environment.NewLine而不是

0

設置的HTMLEncode假

+0

關於什麼控制? – Ryan 2009-07-24 19:07:33

+0

我試着查看所有涉及到的控件,並且我看不到任何htmlEncode屬性 – Ryan 2009-07-24 19:10:21

0

如果你正在服用的數據移出數據庫,包含換行符,那麼只留下那些有和textarea的應該只是罰款...你不需要做替換爲「< BR/>」......如果您將文本作爲HTML放入頁面,您只需要這樣做......但您正在嘗試填充輸入控件,因此除非您正在執行此操作其他東西不清楚,你不需要做替換

+0

嘿,對不起,如果我不清楚...我在其他地方輸出這些數據。當我把它放回textarea時它工作正常。在那裏,它有斷行。當我輸出到其他地方的HTML(不在textarea),這是當我正在做
替換,但它沒有找到vbCrLf – Ryan 2009-07-24 19:16:57

0

使用textarea控件,長文本看起來像有換行符,但有時它們沒有換行符。如果文本達到文本區域的長度,它將在第二行繼續,但不包含換行符。如果用戶按下輸入,則新的換行符將被添加到您的內容中。

我想你錯過了那一點。

希望它有幫助。

+0

不,我完全理解這一點......這是我的問題相反。我想獲得用戶輸入的換行符。例如,當用戶鍵入的第1行 (點擊返回) 線2 ......我想,以取代那些符合HTML換行符打破(
),當我將其輸出到頁面。我知道文字會自動換行,這不是問題。 – Ryan 2009-07-24 19:48:00

+0

就像我說過的,它在DetailsView中工作正常,但由於某些原因,細節視圖似乎正在改變vbCrLf字符(我用
取代了這個字符,這正是我想要的)與其他字符break字符,它不是vbCrLf,因此在輸出到頁面時不會被
取代。 – Ryan 2009-07-24 19:49:55

0

我一直使用一個< br/>來代替VB.NET中的字符代碼 - chr(10)來顯示我的換行符。試試看?