在JSP页面里有个输入框用来输入“操作步骤”,我用<textarea name="CZBZ" cols="64" rows="3" id="CZBZ">输入,浏览的时候用<%=CZBZ%>显示,请问怎么应用replaceAll("\n","<br/>")来实现分行显示?(有别能实现分行显示的方法也行)。
    下面是我的代码和运行后的错误提示:
String CZBZ=(String)request.getParameter("CZBZ");
CZBZ=CZBZ.replaceAll("\n","<br/>");
hashGetParam.put("CZBZ",CZBZ);
我运行的时候会报如下错误:
E:\bea\user_projects\mydomain_gzp\myserver\.wlnotdelete\gzp_gzp_3954857\jsp_servlet\_gzpgl\_gzpsq\__gzpsq_update.java:140: cannot resolve symbol
probably occurred due to an error in /gzpgl/gzpsq/gzpsq_update.jsp line 27:
CZBZ=CZBZ.replaceAll("\n","<br/>");
--------------------------------------------------------------------------------
Full compiler error(s):
E:\bea\user_projects\mydomain_gzp\myserver\.wlnotdelete\gzp_gzp_3954857\jsp_servlet\_gzpgl\_gzpsq\__gzpsq_update.java:140: cannot resolve symbol
symbol  : method replaceAll  (java.lang.String,java.lang.String)
location: class java.lang.String
            CZBZ=CZBZ.replaceAll("\n","<br/>"); //[ /gzpgl/gzpsq/gzpsq_update.jsp; Line: 27]
                     ^
1 error

解决方案 »

  1.   

    建议你按照字符替换吧,charCodeAt()等于13、10是回车换行,使用js就可以处理的了。
      

  2.   

    大概你用了1.3以下的jdk版本吧。1.4才支持
      

  3.   

    啊,我用的是JBuilder9自带的JDK
      

  4.   

    javascript里处理:
    Str=Str.replace("&","&amp;");
    Str=Str.replace(" ","&nbsp;") ;    
    Str=Str.replace(">","&gt;");
    Str=Str.replace("<","&lt;"); 
    Str=Str.replace("\n","<br/>"); 
    Str=Str.replace("\"","&quot;");   要是你放在td里话试试这个:
    <td style="table-layout: fixed;WORD-BREAK: break-all; WORD-WRAP: break-word">
    </td>
      

  5.   

    TO:sheep219(sheep219)
    用javascript处理后,其值怎么返回给页面表单,提交到哈希表(比如:hashGetParam.put("CZBZ",(String)request.getParameter("CZBZ"));)?
      

  6.   

    TO:sheep219(sheep219) ( )
    在javascript里Str=Str.replace("\n","<br/>"); 只能处理第一个分行,后面的就处理不了了,用Str=Str.replaceAll("\n","<br/>"); 会出错,该怎么办呢