zoukankan      html  css  js  c++  java
  • url传递中文的解决方案

    url传递中文的解决方案 
    1.设置web.config文件。 
    <system.web> 
     
    <globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" /> 
     
    </system.web>
    2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。 
    >> 进行传递 
    string Name = "中文参数"; 
    Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name)); 
    >> 进行接收 
    string Name = Request.QueryString["Name"]; 
    Response.Write(Server.UrlDecode(Name)); 

    3.如果是从 .HTML 文件向 .Aspx 文件进行传递中文参数的话(即不从后台用 Redirect()方法进行 Url 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。 
    >> 进行传递 
    <script language="JavaScript"> 
    function GoUrl() 

    var Name = "中文参数"
    location.href 
    = "B.aspx?Name="+escape(Name); 
    }
     
    </script> 
    <body onclick="GoUrl()"> 
    >> 进行接收 
    string Name = Request.QueryString["Name"]; 
    Response.Write(Server.UrlDecode(Name)); 

    一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。 

    在html中实现编解码:

    <script language="javascript">
    function openUrl(src)
    {
      
    var strUrl=escape(src);
      window.open(strUrl);
    }

     

    function change_url(src)
    {
     document.location.href
    =escape(src);
    }

     
    </script>  
     
    在新窗口保存
    <href='javascript:openUrl("css/20040603123628交易中心烟叶网上集中交易系统合同.doc");' >20040603123628交易中心网上集中交易系统合同</a>
     
     
    当前位置保存,无闪烁。
    <href="#" onclick=javascript:change_url("css/20040603123628交易中心烟叶网上集中交易系统合同.doc")>20040603123628交易中心网上集中交易系统合同</a>
     
    注意:路径中的斜线是:“/”,而不是“\”,否则也不行啊。
  • 相关阅读:
    Lucene in action 笔记 case study
    关于Restful Web Service的一些理解
    Lucene in action 笔记 analysis篇
    Lucene in action 笔记 index篇
    Lucene in action 笔记 term vector
    Lucene in action 笔记 search篇
    博客园开博记录
    数论(算法概述)
    DIV, IFRAME, Select, Span标签入门
    记一个较困难的SharePoint性能问题的分析和解决
  • 原文地址:https://www.cnblogs.com/ghd258/p/260241.html
Copyright © 2011-2022 走看看