jsp页面有个textarea,输入时有回车,
例如:输入
1
2
3,然后存入数据库后数据库中也显示
1
2
3
取出来后想显示在页面上。用的是直接显示在页面上。结果换行没效果了。但是右键看源文件里面还是“
1
2
3
在后台看到取出来的数据是 1\r\n2\r\n3, 用replace把 \r\n 换成
结果在页面上直接显示 1
2
3,右键看源文件里面是 1<br>2<br>3 。
请问大家有没有人见过这样的问题?帮忙解决下。
[b]问题补充:[/b]
playfish 说的我也试过了。这样的话在数据库里头显示的是 1
2
3 ,在输出到页面上的话依然是 1
2
3 。源文件中还是 1<br>2<br>3
现在有些头疼。这段文字显示在一个 table 的 td 中间。
bean:write/标签有个filter属性。
设置为false就不会将html过滤掉了。
你试试在保存到数据库之前,将\r\n替换成
恩,同意playfish的观点
以下代码,一般用在新闻发布系统的这问格式化上的。
[code="java"]
int int2 = main.length();
StringBuffer StringBuffer3 = new StringBuffer();
int int4;
for( int4 = 0; int4 < int2; ++int4 )
{
char char5 = main.charAt( int4 );
switch( char5 )
{
case 62:
StringBuffer3.append( ">" );
break;
case 60:
StringBuffer3.append( "<" );
break;
case 38:
StringBuffer3.append( "&" );
break;
case 32:
StringBuffer3.append( " " );
break;
case 10:
StringBuffer3.append( "<BR>" );
break;
default:
StringBuffer3.append( char5 );
break;
case 13:
break;
}
}
main=StringBuffer3.toString();
[/code]
楼上的是对的.filter="false" 就不会过滤