我在语言代码中这样写的:
dr(6) = "<a href='Chart.aspx?systemTable=" & systemTableName & "&fieldName=" & dr(0) & "'>查看</a>"但被解释成了:
<td>&lt;a href='Chart.aspx?systemTable=ygmbr&amp;fieldName=A006'&gt;查看&lt;/a&gt;</td>本来是要用作超连接的,这下不能用了,被直接显示出来了。
没有起到应该起的作用,请教高手。

解决方案 »

  1.   

    innertext→innerhtmlServer.EnCode ?
      

  2.   

    别人用什么做输出都不知道干什么innerhtml?
      

  3.   

    输出的时候转换一下
    可以自定义 标记替换[code]
             /// <summary>
            /// 替换字符
            /// </summary>
            /// <param name="str"></param>
            /// <returns></returns>
            public static string Encode(string str)
            {
                str = str.Replace("'", "''");
                str = str.Replace("\"", "&quot;");
                str = str.Replace("<", "&lt;");
                str = str.Replace(">", "&gt;");
                str = str.Replace("\n", "<br>");
                str = str.Replace("“", "&ldquo;");
                str = str.Replace("”", "&rdquo;");
                return str;
            }        /// <summary>
            /// 还原字符
            /// </summary>
            /// <param name="str"></param>
            /// <returns></returns>
            public static string Decode(string str)
            {
                str = str.Replace("&rdquo;", "”");
                str = str.Replace("&ldquo;", "“");
                str = str.Replace("<br>", "\n");
                str = str.Replace("&gt;", ">");
                str = str.Replace("&lt;", "<");
                str = str.Replace("&quot;", "\"");
                str = str.Replace("''", "'");
                return str;
            }[/code]
      

  4.   

     /// <summary>
            /// 替换字符
            /// </summary>
            /// <param name="str"></param>
            /// <returns></returns>
            public static string Encode(string str)
            {
                str = str.Replace("'", "''");
                str = str.Replace("\"", "&quot;");
                str = str.Replace("<", "&lt;");
                str = str.Replace(">", "&gt;");
                str = str.Replace("\n", "<br>");
                str = str.Replace("“", "&ldquo;");
                str = str.Replace("”", "&rdquo;");
                return str;
            }        /// <summary>
            ///还原字符
            /// </summary>
            /// <param name="str"></param>
            /// <returns></returns>
            public static string Decode(string str)
            {
                str = str.Replace("&rdquo;", "”");
                str = str.Replace("&ldquo;", "“");
                str = str.Replace("<br>", "\n");
                str = str.Replace("&gt;", ">");
                str = str.Replace("&lt;", "<");
                str = str.Replace("&quot;", "\"");
                str = str.Replace("''", "'");
                return str;
            }
      

  5.   

    VB 有个 HtmlEncode 的
      

  6.   

    C#中有2个方法叫 HtmlEncode和HtmlDecode   
      

  7.   

    倒是我来晚了。我是用gridview做的表格,每次都从数据库中取一条数据,然后生成一个ROW:
                    dr = dt.NewRow()
                    dr(0) = Trim(DR1.GetString(1)) '系统变量,隐藏
                    dr(1) = Trim(DR1.GetString(2)) '参数,也就是中文简称
                    dr(2) = IIf(realData(rowCount) <> "-70000", realData(rowCount) / scaleArray(rowCount), "")
                    dr(3) = Trim(DR1.GetString(3)) '单位
                    dr(4) = Trim(DR1.GetString(4)) '标准范围
                    dr(5) = Trim(DR1.GetString(8)) '备注
                    dr(6) = "<a href='Chart.aspx?systemTable=" & systemTableName & "&fieldName=" & dr(0) & "'>查看</a>"
                    dt.Rows.Add(dr)
    然后生成的东西就不对了,所以苦呀。
    我是用VB做的,不知道如何是好了。