如何在Label里显示回车、空格等...
我用DetailView显示数据,详细介绍的那个字段是大段的文章,如何把回车、空格等显示出来呢?同时把一些会有安全隐患的字符给屏蔽或者替换掉呢?
<ItemTemplate>
<asp:Label ID= "HotelDetail " runat= "server " Text= ' <%# Bind( "HotelDetail ") %> '> </asp:Label>
</ItemTemplate>
------解决方案--------------------什么是html的回车、空格呢?而你的 HotelDetail 中保存的是 html 吗?
在你的桌面上创建一个 .htm 后缀的文件,使用记事本打开,把下面这几句话贴进去:
<span style= "color:red "> 你 </span>
看到了
回车
<span style= "color:Green;font-size:1.5cm "> 了 </span>
吗?
你看到回车了吗?
------解决方案--------------------replace(chr(13), " <BR> ")
replace( " ", " ")
replace( " < ",......好多特殊字符啊,做个方法吧
function uxstr(str)
str=str.replace(chr(13), " <BR> ")
str=str.replace( " ......
end function
.net也有可能有现成的类似的函数,反正我都是自己写
------解决方案-------------------- Label1_PreRender(object sender, EventArgs e)
{
contents=replace(contents,chr(10), " ")
contents=replace(contents,chr(13), " ")
}
------解决方案--------------------把 \r \n 这些东西都换成 <BR> 或者 </p> <p> 就可以了 开头和结尾加上对应的P
------解决方案--------------------字符串替换
用Literal控件输出
------解决方案--------------------String.Format()
String.Replace()
个人见解,共同学习
------解决方案--------------------怎么不在存入库中时替换呢?
可以这样:
<ItemTemplate>
<asp:Label ID= "HotelDetail " runat= "server " Text= ' <%# GetHtmlString(DataBinder.Eval( "HotelDetail ")) %> '> </asp:Label>
</ItemTemplate>
在cs中实现:
public string GetHtmlString(object strObject)
{
string str=strObject.ToString();
str=str.Replace( " ", " ");
str=str.Replace( "\r\n ", " <br /> ");
return str;
}
这样就可以了
------解决方案--------------------label.innerHTML
------解决方案--------------------/转意字符