把textarea的内容写到数据库中再读出来时不能自动换行和不识别空格,该怎么样处理!

解决方案 »

  1.   

    显示的时候,把 \n \r 替换成 "<br />"
    把 " " 换成 "&nbsp;"
      

  2.   

    asp:
    <%n="比如这是你读出来的东西"
      n=replace(n,chr(13),"<br>")
      n=replace(n," ","&nbsp")
      response.write(n)
    %>
      

  3.   

    呵呵,求求各位大侠了,我需要javascript版的
      

  4.   

    在textarea控件作换行操作了呀
      

  5.   

    字符串从数据库里读到页面时,通常要经过处理。
    比如果<input value="aaaa">如果数据库里的值是aa"aa,不处理就直接使用的话,就会产生失真。
    对于产生失真或的产生错误的特殊字符,都要进行处理。可以在显示时使用
    <%=CommStr.htmlTextEncoder(yourString)%>/*
     * Created by Seamus
     * Updated on 2004-10-21 by JK
     *
     */
    package com.jk.util;public class  CommStr
    {
      /**
      *replace the old string to new string in the given destination string.
      */
      public static java.lang.String strReplace(java.lang.String destStr, java.lang.String oldStr, java.lang.String newStr)
      {
        if(destStr==null)
          return "";
        String tmpStr = destStr;
        int foundPos = tmpStr.indexOf(oldStr);
        while (foundPos>=0)
        {
          tmpStr = tmpStr.substring(0,foundPos) + newStr + tmpStr.substring(foundPos + oldStr.length(),tmpStr.length());
          foundPos = tmpStr.indexOf(oldStr,foundPos+newStr.length());
        }
        return tmpStr;
      }  /**
      *Encode for HTML.
      */
      public static String htmlEncoder(String str)
      {
        if(str==null || str.equals(""))
          return "";
        String res_str;
        res_str=strReplace(str,"<","&lt;");
        res_str=strReplace(str,">","&rt;");
        res_str=strReplace(str,"\"","&quot;");
        res_str=strReplace(str,"'","&#039;");
        return res_str;
      }  /**
      *Encode for HTML-Text.
      */
      public static String htmlTextEncoder(String str)
      {
        if(str==null || str.equals(""))
          return "";
        String res_str;
        res_str=strReplace(str,"<","&lt;");
        res_str=strReplace(str,">","&rt;");
        res_str=strReplace(str,"\"","&quot;");
        res_str=strReplace(str,"'","&#039;");
        res_str=strReplace(str," ","&nbsp;");
        res_str=strReplace(str,"\r\n","<br>");
        res_str=strReplace(str,"\r","<br>");
        res_str=strReplace(str,"\n","<br>");
        return res_str;
      }  /**
      *Encode for URL.
      */
      public static String urlEncoder(String str) {
        return java.net.URLEncoder.encode(str) ;
      }  /**
      *Encode for XML.
      */
      public static String xmlEncoder(String str)
      {
        if(str==null || str.equals(""))
          return "";
        String res_str;
        res_str=strReplace(str,"&","&amp;");
        res_str=strReplace(res_str,"<","&lt;");
        res_str=strReplace(res_str,">","&gt;");
        res_str=strReplace(res_str,"\"", "&quot;");
        res_str=strReplace(res_str,"\'", "&acute;");
        return res_str;
      }  /**
      *Encode for SQL.
      */
      public static String sqlEncoder(String str)
      {
        if(str==null || str.equals(""))
          return "";
        String res_str;
        res_str=strReplace(str,"'","''");
        return res_str;
      }  /**
      *Encode for Javascript.
      */
      public static String jsEncoder(String str)
      {
        if(str==null || str.equals(""))
          return "";
        String res_str;
        res_str=strReplace(str,"'","\\'");
        res_str=strReplace(str,"\"","\\\"");
        res_str=strReplace(str,"\r\n","\\\n");
        res_str=strReplace(str,"\n","\\\n");
        res_str=strReplace(str,"\r","\\\n");
        return res_str;
      }}
      

  6.   

    这个实现最好是在server端而不是client端。不要想着用javascript实现,不现实。jk, 什么时候在javascript版成猩了?妒嫉啊。
      

  7.   

    cm4ever(小P):
    见笑了。:)
      

  8.   

    我目前在jsp/servlet/javabean论坛混。基于不重造轮子的原则,我决定把你这个类加到我的blog。jsp论坛很多人都问过这个问题。好听的说法是学习高手代码,粗鲁点说就是抢啦!呃,觉得你也应该激活blog :)))
      

  9.   

    多谢 JK_10000(JK):
    但我是asp,服务段用的是javascript脚本