台灣最大程式設計社群網站
線上人數
802
 
會員總數:243161
討論主題:187981
歡迎您免費加入會員
討論區列表 >> ASP.NET >> 資料庫回存在html Div換行問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
資料庫回存在html Div換行問題
價值 : 50 QP  點閱數:237 回應數:8

樓主

小強
門外漢
0 23
400 29
發送站內信



各位前輩
想請問一下~~

我用ajax將textarea資料(有換行)存進資料庫時,重新取到DB資料~~直接用Razor語法將資料庫值回存到Textarea~~換行會在~~
但若是要存到DIV~~無法換行~~~
我試過Replace("\n", "\\n")或Replace("\n", "<br>")~~~只是讓空白變成\n或<br>字串~~並無換行~~~
要如何做才能換行呢~~
感謝~~~


搜尋相關Tags的文章: [ 資料庫回存DIV換行 ] ,
本篇文章發表於2018-06-27 19:03
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

小魚
檢舉此回應
Replace("\n", "\\n") 不是應該是 Replace("\\n", "\n") 嗎?
不過沒看到字串內容也很難肯定...
本篇文章回覆於2018-06-27 20:36
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小強
檢舉此回應
在Razor中看到的c# 拉回來的字串是"XXXXXXXXXX\n"
所以資料庫回來的字串是有換行符號"\n"~~但我換成<br>~~也只是顯示<br>在頁面上而已
本篇文章回覆於2018-06-27 22:19
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

小羊窒息
捐贈 VP 給 小羊窒息 檢舉此回應
Replace("\n", "<br>")

在html畫面會直接看到【<br>】, 而不是【斷行】的話,


你大概是放在GridView裡面吧.......

在GridView裡面加上 HtmlEncode="False"
<asp:BoundField HtmlEncode="False" DataField="hello" HeaderText="hello" />

可以禁止dotNet自動幫你把< > 變成&lt; &gt;
本篇文章回覆於2018-06-27 22:51
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
最有價值解答

小魚
檢舉此回應
Razor是MVC吧,
MVC要用 @Html.Raw("字串內容") 包起來,就會轉成Html的格式
本篇文章回覆於2018-06-28 00:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

小強
檢舉此回應
小魚~~對~~是MVC~~用了@Html.Raw確實可以~~
但我有個問題想請教~~~
為什麼直接用Razor將資料放到textarea是可以直接顯示換行~~~
本篇文章回覆於2018-06-28 08:52
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
不錯的參考

小魚
檢舉此回應
textarea的換行應該是textarea自己處理的,

有些狀況下你沒有用Html.Raw,
它會當作字串處理,
有點像
的結果,
但是用了Html.Raw,
就會當作Html語法來處理.
本篇文章回覆於2018-06-29 12:49
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
不錯的參考

topcat
捐贈 VP 給 topcat 檢舉此回應
為什麼直接用Razor將資料放到textarea是可以直接顯示換行~~~

我是這樣認為的∼
TextArea是屬於html中Form(表單)的原生相關物件,主要是要讓使用者去輸入維護
因此瀏覽器要忠實的去記錄與呈現使用者輸入的內容


這裡面的東西,有空白、換行、<,>都會被完整的保留原來輸入的樣子,不是html的內容

而html的內容(如果您用瀏覽器去檢視原始碼所看到的東西)
html原始檔中的空白、換行,都不會直接呈現

你網頁中看到的換行是html tag:<br />,段落是html tag:<p></p>

大概是這樣的概念

以上其實是html的基礎,建議您撰寫Web應用程式,一些html基礎的概念,要找時間補充一下
^_^

本篇文章回覆於2018-07-03 11:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

小強
檢舉此回應
好~~謝謝喵和魚
本篇文章回覆於2018-07-11 22:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.