aspx页面里
<meta name="keywords" content="<%=KeyWords %>" />
生成的html网页内容这样子的
<meta name="keywords" content="&lt;%=KeyWords %>" />
如果去除双引号就能生成这样的正常结果,只是没双引号不规范
<meta name="keywords" content=关键字,测试,csdn />其他地方比如<img src="<%=imgurl%>" />即使有双引号也能正常执行的怎么办呢?

解决方案 »

  1.   

    <%=KeyWords %>你可以整体的输出啊!keyWords里面放<meta name="keywords" content="关键字,测试,csdn" />
      

  2.   

    可以通过pageload 中编写代码实现如:
            HtmlMeta meta = new HtmlMeta();
            meta.Name = "keywords";
            meta.Content = "abc";
    或者 在meta标记中加 runat = "server"  并分配id  在pageload 中获得该对象设置content属性.
      

  3.   

    由于没有runat="server"标记,所以直接把你的<%=keyword%>输出到客户端了
      

  4.   

    Content后的'改成""
    content="<%=Title%>"
    <meta http-equiv="content-type" content="text/html;charset=gb2132"/>
    <meta name="description" content="<%=strDes%>"/> HtmlMeta keywords = new HtmlMeta();
       keywords.Name = "keywords";
       keywords.Content = "";
       Page.Header.Controls.Add(keywords);
      

  5.   

    你那样写也可以,就是看看的head 有没有运行在服务端,看你的错误,好像是没有运行在服务端的原因
      

  6.   

    Server.HtmlEncode(TextBox1.Text.ToString)
      

  7.   

    我见过一个CMS就是我这样做的
    <%if(config.MetaDescription.Length>0){%>
    <meta name="description" content="<%=config.MetaDescription%>"/><%}%>
    <%if(config.MetaKeyword.Length>0){%>
    <meta name="keywords" content="<%=config.MetaKeyword%>"/><%}%>
    ,它为什么能正常执行?
      

  8.   


    这种方式是类似于asp的写法.注意下面的标签
    <%
    %>
      

  9.   

    可以用服务器控件来动态赋值.如果按你的办法,试试<meta name="keywords" content="<%=Server.HtmlDecode(KeyWords)%>" />
      

  10.   

    把Head里边的runat="server"去掉,就OK了