我在HyperLink1的NavigateURL的属性里写上form1.aspx?id=Server.UrlEncode("张三李四")但是页面在运行时点击这个链接后,地址栏的地址变成了http://localhose/form1.aspx?id=Server.UrlEncode("张三李四")到底怎么编码?顺便问一句大家ASPX页面的编码是用的什么编码?GB2312还是UTF-8?

解决方案 »

  1.   

    form1.aspx?id=Server.UrlEncode("张三李四")
    这句错了。
    Server.UrlEncode("张三李四")是没错。但是放在那个地方就等于把Server.UrlEncode("张三李四")做为普通的字符来处理了。
    所以Server.UrlEncode("张三李四")应该放在引号外吧?你是用VS2003做的吗?我没用过,你可以试下在代码中改改。
      

  2.   

    Server.UrlEncode("张三李四")
    这个话是需要在 放在VB的代码里的
    就是说需要标志符号的
      

  3.   

    在页面里不要写NavigateURL的属性
    如:<asp:HyperLink id="hyperlink" runat=server>链接</asp:HyperLink>
    在后台代码页面中的Page_Load里写
    hyperlink.NavigateURL='form1.aspx?id=Server.UrlEncode("张三李四")'这样应该可以的