Microsoft . 技术之路...

—— 专注于微软技术, 分享是快乐的源泉......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

解決GridView中链接带中文参数时乱码的问题

Posted on 2007-08-15 09:34  赣江源  阅读(610)  评论(0编辑  收藏  举报

我们以往如果要在QueryString中带着含有中文或者特殊字符的参数值时,我们通常可以使用Server.UrlEncode来编码QueryString要传递的参数值,如:abc.aspx?name=Server.UrlEncode("name")。但是在GridView中,如果使用邦定元素HyperLinkFiled控件时便无法处理这样的情况,这个时候可以转换成Templete,然后把本来使用<asp:HyperLink>控件的地方改为传统HTML的超链接方式,通过Server.UrlEncode格式化参数值来传递。
如下范例:
        <asp:TemplateField HeaderText="型号">
            <ItemTemplate>
                <a href='abc.aspx?MODEL=<%#Server.UrlEncode(Eval("MODEL"))%>'><%# Eval("MODEL")%></a>
            </ItemTemplate>
        </asp:TemplateField>