datalit前台绑定数据后的分行问题.

datalit前台绑定数据后,发现以前用TextBox输入的数据本来的有分行的地方,显示的时候却把分行的地方转成了一个空格.怎么把分行显示出来????... datalit前台绑定数据后,发现以前用TextBox输入的数据本来的有分行的地方,显示的时候却把分行的地方转成了一个空格.
怎么把分行显示出来????
展开
 我来答
以画屏屏8748
2008-01-11 · TA获得超过7191个赞
知道大有可为答主
回答量:2581
采纳率:0%
帮助的人:3321万
展开全部
好了不说多话了,我们这一节要来看看如何使用asp+中的控件吧。

ASP+中的控件分为两种,一种是HTML控件(HtmlControls),一种是Web控件(WebControls),我们这一节先来讲讲比较简单的HTML控件。另一种控件留到下一节再去讲:)

HTML控件,如果只是看外观,发现和普通的HTML标签没有什么两样,不过就是

<select><a>

这些东东,唯一的区别就是在标签的后面多了个RunAt="server",其实我们对这个RunAt="Server"我们也不陌生,呵呵,在asp的global.asa文件我们经常看到。但是如果在asp+中多了这个,那么程序代码的性质也就变了。如:

<selectid="aspcn">

<option>ASP</option>

<option>JSP</option>

<option>PHP</option>

</select>

上面的select不过是一个普通的HTML标签而已,但是如果在select后加上RunAt="server",那么一切都变了。

<selectid="aspcn"RunAt="Server">

<option>ASP</option>

<option>JSP</option>

<option>PHP</option>

</select>

那么这个就是一个asp+程序,我们就可以写ASPX程序了。如:

<%@importNameSpace="System.Data"%>

<ScriptLanguage="c#"RunAt="Server">

voidaspcn_onclick(Objectsrc,EventArgse)

{

stringselectValue;

if(Page.IsPostBack)

{

selectValue=aspcn.SelectedItem.Value;

SelectItem.Text=selectValue;

}

}

</script>

<html>

<head><title>Select演示程序</title></head>

<body>

请选择:

<formrunat="server">

<selectid="aspcn"RunAt="Server">

<option>ASP</option>

<option>JSP</option>

<option>PHP</option>

<option>ASP+</option>

<option>COM</option>

</select>

<asp:Bottuntext="提交"OnClick="aspcn_onclick">

<br>

您的选取的Select列表是:<fontcolor=red><asp:Labelid="SelectItem"Text="暂无"></font>

</form>

上面是一个很简单的aspx例子,主要目的是演示selectHTML控件的用法.上面的例子中,首先显示如下:

请选择:ASPJSPPHPASP+COM

您的选取的Select列表是:暂无

当你点击"提交"键后,你就会后到:(假设我们选取的是PHP)

请选择:ASPJSPPHPASP+COM

您的选取的Select列表是:PHP

从上面的例子中我们可以看到,我们主要操作的是aspcn_onclick子程序,而这个程序是由名为sub的控件激发的。(这里的Button和Label均属于WEB控件,我们下一节再讲),我们在aspcn_onclick中对于名为aspcn的select控件的操作,我们也很熟悉,呵呵,是不是很像客户端的JavaScript?!相信用过javascript的兄弟,一定能看懂程序,呵呵,我们写服务器程序是不是像是在写客户端的程序,M$推出.Net也就是为了达到这个效果,不过这个对初学者来说是个不太好的事情,因为初学者本来就搞不清什么是客户端什么是服务器,现在又把他们写在一起,相信很多人要搞糊啦,所以我一开始就建议初学者还是先看看一些基础的东东为好。

我们使用aspcn.SelectedItem.Value来获取aspcn列表的值,然后通过SelectItem.Text=selectValue再把这个值传给名为selectItem的控件。就成为了我们看到的情形。程序是很简单的,我们在这里只是让大家有一个初步的了解。

几乎每一种HTML标签加上个RunAt="server"就可以成为HTML控件了。具体的有:

HtmlAnchorHtmlButtonHtmlFormHtmlGenericControl

HtmlImageHtmlInputButton(Button)HtmlInputButton(Reset)HtmlInputButton(Submit)

HtmlInputCheckBoxHtmlInputFileHtmlInputHiddenHtmlInputImage

HtmlInputRadioButtonHtmlInputText(Password)HtmlInputText(Text)HtmlSelect

HtmlTableHtmlTableCellHtmlTableRowHtmlTextArea

我一时也无法把他们的用法一个个的说明,请大家到我上面说的那个站点自已去看,我们以后写程序就要熟练使用HTML控件和Web控件了。只要E文好,相信没有什么问题,呵呵,不要指望飞刀我翻译啊,我头都大了,大家饶我一命。

另外我们要提醒大家的就是,因为我们写ASP+一般都用c#,所以在命名控件时注意大小写,不然编译时会出错的。再有就是如果程序编译时请仔细看好出错信息,不要一出错就马上想到去问,自已动脑筋去想想,收获会更大。呵呵,这一章就到这里了,下一节就要讲WEB控件。

(先说一下我的安排了咯,呵呵,讲完WEB控件后,再讲Bind,然后就是数据库,接着就是Application和Session,再后来的以后再安排)

88,祝大家过个好春节:)

整天的泡在考研的资料里面,闲暇时就和朋友们大谈特谈NGWS,一天终于被lazy兄一棍子打醒,"都什么年代了,还在谈NGWS",慌忙中赶快重新下载我心目中的"NGWS",装上后,发现今非昔比,这个NGWS已经改名叫Micosoft.net,ASP+也堂而皇之的改名为ASP.NET.而且现在不仅window2000能够安装调试asp.net了,而且连最烂的"瘟酒吧"也可以了,于是发现自已离时代越来越远了.....(台下人:发表什么感叹,还不快入正题)(同时,一不明飞行物突然向飞刀砸来,飞刀立刻倒在血泊中.....)

Web控件

按照计划我们这一节要谈Web控件,我想了半天也不知道如何定义这个web控件,它比html控件难于理解,毕竟HTML太像原来我们熟悉的东东了。而web控件确与我们平常见到的有很大的出入,不知道大家还记不记得我说过的一句话,那就是ASP.net的程序就像是写VBVC中的窗口,先再这些窗口中加入我们的需要的控件,然后再对这些控件进行操作。如果你学过一点点VBVC的编程,那么理解这个就不难了,ASP.net中的web控件就像是VBVC中的控件一样。我们先在页面中摆好这些控件,然后再通过Page_Load以及其它一些自定义事件来对他们进行控制。我们还是通过看一个实例来了解一下吧。我们先举简单的Label控件吧.

源代码如下:

测试Label控件:

这是红色粗体的文字

这段程序执行后的结果是

测试Label控件:

这是红色粗体的文字

这是蓝色斜体的文字

这是黑体字,并且带下划线

看看源代码,再看看程序执行的结果是不是发现Label控件和VB中的Label控件很相近:)

(注:你在你的机器上看到的中文可能是乱码,那么请您打开x:\winnt\microsoft\framework\v1.0.224目录,找到其中的config.web文件,打开它,找到下面的文字:

requestencoding="iso-8859-1"

responseencoding="iso-8859-1"

/>

把其中的iso-8859-1改为gb2312,OK,再执行一下程序,中文是不是出来了:)

这里我们用了三种方法来操作Label控件,第一种是类似HTML的闭合标签,将要写的字写在之间;第二种是用到了Label控件Text属性;第三种,是通过执行Page_Load事件而把文字写进Label控件的。这三种方法都很有用,看你自已的喜欢了,第三种是最常用的啦,以后我们会经常用到.Label控件不光有Text属性来控制它的文字,而且还有font-size等属性来控制字体大小,颜色等属性,这里的例子我都用到了,大家好好看看,相信没有什么问题

我们见过了Label控件的操作,那么我们对web控件有了一个感性的认识,在ASP.net中,一共有28个WEB控件,它们是:

AdRotatorButtonCalendarCheckBox

CheckBoxListCompareValidatorCustomValidatorDataGrid

DataListDropDownListHyperLinkImage

ImageButtonLabelLinkButtonListBox

PanelRadioButtonRadioButtonListRangeValidator

RegularExpressionValidatorRepeaterRequiredFieldValidatorTable

TableCellTableRowTextBoxValidationSummary

大家可以到我上一节讲的那个站点去具体看一下他们各自的用法,这里我本来想主要讲一下DataGrid,DataLit,ListBox但是他们其中都需要用到Binding知识(这个我们在下一节讲),所以我们主要来看看DropDownList的用法(因为我们上一节是用的select来讲解HTML控件的)

先看一个例子:

请选择ASPCN.Com工作室程员:

飞刀

大风

Zsir

布丁

亚豪

它执行显示为:

请选择ASPCN.Com工作室程员:

飞刀大风Zsir布丁亚豪

如果我选中了其中的飞刀,然后再按下"提交"键,那么显示就是:

请选择ASPCN.Com工作室程员:

飞刀大风Zsir布丁亚豪

您选择的是本工作室的飞刀成员

DropDownList控件,其实和select差不多,功能也就多那么一点点,但是这个多一点点的功能就是很有用的,这就是我们下一节要学习的Bind,呵呵,是不是想学了:)不急,我们先分析一下这里的程序。

我们用DropDownList控件建立起一个List列表,然后我们选择其中的一个选项,最后按提交键提交。这里我们可以看到处理程序的是sub_click这个事件,这里由名为sub的button控件激发,所用的事件是Onclick,这里和HTML控件所使用的OnServerClick事件是不同的,大家要分清楚。其它的好像没有什么可以说了。呵呵
凛良珏影cz
2008-01-11 · TA获得超过262个赞
知道小有建树答主
回答量:243
采纳率:0%
帮助的人:275万
展开全部
因为你用textbox存的时候并没有将分行的标记存到数据库当中,在textbox中回车换行最终会转换成一个空格,所以你前台读取数据的时候并没有分行而是只是多了一个空格.
============================================
解决方法:这种情况有好多种方式可以解决的,第一个就是你可以换一个编辑器,比如说FCKEditor来替代textbox,因为它能将Html标记存到数据当中去.

第二种:读取数据的时候写一个函数将textbox中用空格分割的字符转换成换行符

string m_str=数据库读取的数据;
m_str.Replace(" ","</br>");

前台显示的时候记得用InnerHtml将内容加入,这样就能识别这个</br>标记了.

如果你还有什么不明白的你可以给我发邮件 s3922731#126.com
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shiqi917
2008-01-11 · TA获得超过141个赞
知道小有建树答主
回答量:188
采纳率:0%
帮助的人:153万
展开全部
标准答案

你在text控件里面打入的回车,对应的字符串实际上是\r\n,存入数据库里面也是以这样的形式。
比如你输入"ab回车c",数据库里面会保存"ab\r\nc",但是你通过label等控件把这个后字符串打到html上的时候,Html并不能解析\r\n,只会在源代码里面加上一个回车(可以通过看html源码查看)

所以,读取数据库的字符串以后,要把其中的\r\n替换成<br>,这样就OK了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式