MultiLine 换行后 读取不换行

<asp:TextBox ID = "txtRecord" TextMode="MultiLine" Columns="30" Rows="10" runat="server" />

输入内容中有换行,保存到数据库,直接查看感觉没有换行,但查询结果“以文本格式显示结果”你就会发现 其实是有换行的。

接下来问题就来了,页面读取显示,为什么换行又没了??!!查阅N多文档,发现:

 

控制字符
制表符 CHAR(9)
换行符 CHAR(10)
回车 CHAR(13)

 

 

明白了吧,但又一个容易误导的是,“换行符”“回车”  “以文本格式显示结果” 都是换了一行的

经过测试发现,ASP.Net文本域插入的是 换行符”  CHAR(10)   哦耶这下可以了吧,对于老鸟来说,下面就不用我说了吧。

但考虑到新手也比较多的情况说明一下吧:


lblInfo.Text = dt.Rows[0]["Info"].ToString().Replace("CHAR(10)","<br>"); 错!!!!!!!!!

CHAR(10) 不是文本,这样替换是不行的.

想要在SQL中插入换行是这样写的

insert into Order_Messages values('','aaaa'+char(13)+' nbbb',1,getdate())--注意红色部分

所以程序中应该是这样处理的:

 

SELECT TOP 1 *,REPLACE(contents,char(10),'<br>') AS Cont FROM Order_Messages
这个应该没问题了吧。。。。。。
好吧,有人说,我页面有编辑功能,但一点编辑<br>都带出来了。。。。。。。
好人做到底:
txtRecord.Text = lblSCLTJL.Text.Replace("<br>","\r\n");

OK 收工,完整了。

 


posted @ 2013-06-10 20:25  爱生活,爱编程  阅读(273)  评论(0编辑  收藏  举报