`
limon87
  • 浏览: 72098 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JS地址传递Url参数中文字符问题

 
阅读更多

escape() 方法:
采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是 。
不会被此方法编码的字符: @ * / +
encodeURI() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。
不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + '
encodeURIComponent() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如 / 等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则 / 字符被编码之后URL将显示错误。
不会被此方法编码的字符:! * ( ) '
因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用 escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者 encodeURIComponent。
另外,encodeURI/encodeURIComponent是在javascript1.5之后引进的,escape则在javascript1.0版本就有

1.设置web.config文件。

或者:
aspx文件中:

2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。
>> 进行传递
string Name = "中文参数";
Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name));
>> 进行接收
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name));
或者:
NavigateURL=
3.如果是从 .HTML 文件向 .Aspx 文件进行传递中文参数的话(即不从后台用 Redirect()方法进行 Url 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。
>> 进行传递

<script type="text/javascript" language="JavaScript">// <![CDATA[
function GoUrl()
{
var Name = "中文参数";
location.href = "B.aspx?Name="+escape(Name);
}
// ]]></script>



>> 进行接收
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name));
一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。
————————————————————
在html中实现编解码:

在新窗口保存
<a href="javascript:openUrl(&quot;css/合同.doc&quot;);">交合同</a>
当前位置保存,无闪烁。
<a onclick="BLOCKED" href="#">合同</a>
注意:路径中的斜线是:“/”,而不是“"”,否则也不行啊。
from:http://blog.sina.com.cn/s/blog_5f9c3adf0100tyix.html

分享到:
评论

相关推荐

    url参数中传递特殊字符处理方法

    在进行 URL 参数传递时,需要处理特殊字符的编码问题。因为有些符号在 URL 中是不能直接传递的,需要使用他们的编码。以下是常见的 URL 特殊符号及编码: 1. + 号表示空格,编码为 %2B 2. 空格,编码为 %20 3. / ...

    JS过滤url参数特殊字符的实现方法

    在URL传递参数中,有一些特殊字符,而这些些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。下表中列出了一些URL特殊符号及编码十六进制值 1. + URL 中+号表示空格 + 2. ...

    JSP中js传递和解析URL参数以及中文转码和解码问题.docx

    ### JSP中JS传递与解析URL参数及中文转码解码问题详解 #### 一、引言 在Web开发中,尤其是使用Java Server Pages (JSP)进行开发时,经常需要处理URL中的参数,包括参数的传递、解析以及对中文等特殊字符的处理。...

    jsp中URL传递中文参数的处理方法

    在页面的url中使用encodeURI(encodeURI(中文)),对中文... 您可能感兴趣的文章:js将json格式的对象拼接成复杂的url参数方法js的form表单提交url传参数(包含+等特殊字符)的两种解决方法JS根据key值获取URL中的参数值及

    js获取url参数

    ### JavaScript 获取 URL 参数详解 #### 一、引言 在Web开发中,经常需要处理URL中的查询参数。这些参数通常用于传递页面之间的数据或者状态信息。JavaScript作为一种强大的客户端脚本语言,提供了多种方法来实现...

    Js日历控件传递url参数

    总的来说,"Js日历控件传递url参数"涉及到客户端JavaScript的事件处理和URL操作,以及服务器端ASP的参数解析和数据库查询。通过这种技术结合,我们可以创建一个能够动态筛选内容的交互式日历,提供更个性化的浏览...

    url传递的参数值中包含&时,url自动截断问题的解决方法

    在做一个公告浏览功能时,只要通过url传递的某参数值中包含 & 或 ,就会出现问题–该变量的值无法显示。 问题定位结果: 遇到&时,该参数的值会自动截断,导致参数值传递有误。 二、问题的解决 java代码中做如下...

    页面跳转js获取传递的参数

    ### 页面跳转JS获取传递的参数 在Web开发过程中,页面间的跳转及参数传递是极为常见的需求之一。本文将详细介绍几种通过JavaScript实现页面跳转并获取传递参数的方法。 #### 方法一:使用`window.location.href` ...

    flex获得html容器传递的url参数值

    在Flex中,我们可以通过`ExternalInterface.call()`方法调用JavaScript函数,然后让JavaScript处理获取URL参数的任务。 在JavaScript中,我们可以利用`window`对象和`location`对象来获取URL参数。`window.location...

    jquery获取URL中参数解决中文乱码问题的两种方法

    当我们需要在两个页面间通过URL传递参数时,经常会遇到中文乱码问题。这个问题主要是因为URL中的参数可能没有经过正确的编码和解码处理。为了解决这个问题,我们可以采取一些方法,特别是当使用jQuery来获取URL参数...

    js获取url参数.rar url参数获取

    URL(Uniform Resource Locator)是网页的地址,而URL参数则是附加在URL后面,用于传递额外信息的键值对。这些参数通常以问号(?)开始,每个参数之间用与号(&)分隔。例如,`...

    HTML页面地址栏参数传递与获取

    然而,除了这种方式外,还可以通过URL参数来传递数据给HTML页面,即在URL中加入特定格式的参数字符串。本文将详细介绍如何在HTML页面中利用JavaScript来实现地址栏参数的传递与获取。 #### 二、基础知识 在深入讨论...

    javascript将url中的参数加密解密代码

    在JavaScript中,有时我们需要对URL中的参数进行加密和解密,以确保数据的安全性,防止敏感信息被轻易读取。本文提供的代码片段就是用于实现这个目的的一个示例。让我们深入了解一下这段代码的工作原理和相关知识点...

    URL中文字符

    在处理URL中的中文字符和不定参数时,需要注意浏览器和服务器之间的兼容性问题。不同的浏览器和服务器可能会有不同的默认编码方式,因此在开发过程中应确保所有的编码和解码操作都按照同一套规则进行,以避免出现...

    js对话框传递参数

    ### JS对话框传递参数 #### 一、简介 在JavaScript中,通过对话框进行参数传递是一种常见的交互方式,尤其在需要弹出一个模态对话框并与其进行数据交换的场景下更为常见。本文将详细介绍如何利用`window....

    asp.net页面通过URL参数传值中文乱码问题解决办法

    在Asp.Net开发中,遇到页面通过URL参数传递中文字符时出现乱码是一个常见的问题。这个问题通常是由于字符编码不一致导致的。以下是三种常见的解决方法: 1. **配置Web.config文件**: 在Web.config文件的`...

    奇数个中文字符url传递乱码

    为了解决奇数个中文字符URL传递乱码的问题,可以采用JavaScript来实现正确的编码处理。具体步骤如下: 1. **获取原始URL**:首先获取用户输入或系统生成的原始URL。 2. **编码处理**: - 使用`encodeURI()`函数...

    php获取URL中带#号等特殊符号参数的解决方法

    编码后的字符串可以安全地作为URL的一部分传递,服务器端在接收时能获取完整的参数值。 在前端JavaScript代码中,我们可以创建一个函数来获取用户输入,并使用escape函数对这个值进行编码,然后通过修改window....

    js的form表单提交url传参数(包含+等特殊字符)的两种解决方法

    总结,对于在JavaScript中通过表单提交URL参数包含特殊字符(如"+")的问题,可以通过以上两种方法来解决。第一种方法是通过动态创建表单元素并在其中对参数进行编码后提交,适用于不支持HTML5 formaction属性的旧版...

    js获取地址栏参数

    ### JavaScript 获取URL地址栏参数详解 #### 一、引言 在Web开发中,经常需要通过URL传递参数来实现页面间的数据交互。JavaScript作为一种广泛应用于Web前端开发的语言,提供了多种方式来获取URL中的参数。本文将...

Global site tag (gtag.js) - Google Analytics