在BS項(xiàng)目,有時(shí)候大家可能遇到這樣的問題:在textarea中輸入一堆內(nèi)容,里面難免會(huì)有一些回車換行,保存成功后到詳細(xì)頁面去查看剛才輸入的內(nèi)容,你會(huì)發(fā)現(xiàn)那些本該換行的地方并未換行。今天研究了一下,把這個(gè)小問題解決了。
?
很簡單:在HTML中使用<PRE>標(biāo)簽即可,比如下面代碼
<PRE> 這是神馬 有木有 我勒個(gè)去 加了個(gè)油 <PRE>
?最后這四句話會(huì)換行顯示,當(dāng)然<PRE>中也可以嵌入java代碼顯示。
?
推薦使用上面的方法,下面這個(gè)方法是一年前的解決方案,繞了很多彎路。
?
首先來看,我們在頁面輸入換行的信息,點(diǎn)擊提交后在控制臺(tái)打印剛才輸入的信息是什么樣子的:
頁面輸入內(nèi)容:
?
?點(diǎn)擊確定后,控制臺(tái)的內(nèi)容:
從上面可以看到,在前臺(tái)輸入的回車換行到后臺(tái)還是很好的保存了。
?
然后我們再到詳細(xì)頁面,獲取剛才輸入的內(nèi)容,看下有什么問題:
?
<table> <tr> <td class="infoname bo p14" style="width:9em;" valign="top">公司簡介:</td> <td style="font-size: 12">${requestScope.infoMemberDetailDto.corporation.t811}</td> </tr> </table>
可以看到,頁面時(shí)沒有對這些字段進(jìn)行換行處理的。
?
?
分析原因:我們知道html的換行標(biāo)簽是<br>,而在java中換行符是/r/n。也就是說:在textarea中輸入回車換行再存入數(shù)據(jù)庫時(shí),這些回車換行符是以/r/n的形式存入數(shù)據(jù)庫的,取出來也同樣,但是到頁面時(shí)html是無法將/r/n當(dāng)換行處理的。
解決方法:在后臺(tái)從數(shù)據(jù)庫取出數(shù)據(jù)的時(shí)候?qū)?r/n轉(zhuǎn)換成<br/>即可
?
后臺(tái)代碼:
infoMemberDetailDto.getCorporation().setT811(infoMemberDetailDto.getCorporation().getT811().replace("\r\n", "<br/>"));
頁面效果:
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
