我在数据库里存入 <script>alert("aaa")</script>
当我绑定控件显示的时候,就弹出对话框,怎么编码,才能正常显示。
求救!

解决方案 »

  1.   

    在存入数据库前,用这个函数先处理:// 对输入字符处理
            public static string CleanInputText(string inputString, int maxLength)
            {
                StringBuilder retVal = new StringBuilder();            if ((inputString != null) && (inputString != String.Empty))
                {
                    inputString = inputString.Trim();                if (inputString.Length > maxLength)
                        inputString = inputString.Substring(0, maxLength);                for (int i = 0; i < inputString.Length; i++)
                    {
                        switch (inputString[i])
                        {
                            case '"':
                                retVal.Append("&quot;");
                                break;
                            case '<':
                                retVal.Append("&lt;");
                                break;
                            case '>':
                                retVal.Append("&gt;");
                                break;
                            default:
                                retVal.Append(inputString[i]);
                                break;
                        }
                    }
                    retVal.Replace("'", "");
                    retVal.Replace(" ", "&nbsp;");
                    retVal.Replace("\r\n", "<br />");
                }
                return retVal.ToString();
            }
      

  2.   

    谢谢楼上的
    我用了Request["content"].Replace(" ","&nbsp;").Replace("\n","<br>").Replace("<"," &lt;").Replace(">","&gt")将这些字符替换了,但是图片和url在前台就没法显示了,要显示还必须再转换回来,因为我一个页面有很多回复,这样,没个回复都进行转换,是不是性能太低了啊。