HTML的Get方法URL传递中文参数,解决乱码问题

本例中有使用JQuery。

资料参考:http://www.cnblogs.com/babycool/p/3169058.html

发送的HTML页面代码:

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="UTF-8">
 5 <title>Index</title>
 6 <script type="text/javascript" charset="uf-8" src="jquery-1.11.3.min.js"></script>
 7 <script>
 8     $(function() {
 9         $(‘#send‘).click(function() {
10             var value1 = $(‘#value1‘).val();
11             var value2 = $(‘#value2‘).val();
12             var url = "receive.html?value1=" + value1 + "&value2=" + value2;
13             url=encodeURI(url);   //对URL的地址进行encodeURI编码,实际上只有中文的部分被修改编码
14             window.location.href=url;
15         });
16     });
17 </script>
18 </head>
19 <body>
20     <div>
21         <div>
22             <span>value1:&nbsp;</span><input type="text" id="value1" />
23         </div>
24         <div>
25             <span>value2:&nbsp;</span><input type="text" id="value2" />
26         </div>
27         <div>
28             <button id="send">发送</button>
29         </div>
30     </div>
31 </body>
32 </html>    

接收的HTML页面代码:

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="UTF-8">
 5 <title>Receive Param</title>
 6 <script type="text/javascript" charset="utf-8" src="cordova-2.1.0.js"></script>
 7 <script type="text/javascript" charset="uf-8" src="jquery-1.11.3.min.js"></script>
 8 <script>
 9     function getParam(name) {
10         var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
11         var r = window.location.search.substr(1).match(reg);
12         if (r != null)
13             return decodeURI(r[2]);   //对参数进行decodeURI解码
14         return null;
15     }
16
17     $(function() {
18         var val1 = getParam("value1");
19         var val2 = getParam("value2");
20         $(‘#value1‘).html(val1);
21         $(‘#value2‘).html(val2);
22     });
23 </script>
24 </head>
25 <body>
26     <div>
27         <div>
28             <span>value1: </span><b id="value1"></b>
29         </div>
30         <div>
31             <span>value2: </span><b id="value2"></b>
32         </div>
33     </div>
34     <hr />
35     <div>
36         <a href="index.html">back</a>
37     </div>
38 </body>
39 </html>
时间: 2024-10-27 06:14:34

HTML的Get方法URL传递中文参数,解决乱码问题的相关文章

url 传递中文参数乱码问题的终极解决方法。

估计很多人在做web开发的时候,都会碰到过url传递中文参数,有时候会出现乱码的问题,但有些项目或者环境,又不会有问题.当遇到乱码的时候,上网找了很多解决方案,比如: 页面设置它的编码方式,改成utf-8 或者gb2312. encodeURI(url),也有人说要2个encodeURI,如:window.location.href = encodeURI('b.html?cId='+id+"&cName="+encodeURIComponent(name)); 然后后台Str

URL传递中文参数,大坑一枚,Windows与Linux效果竟然不一致

下午,计划2个小时搞定,个人官网第6次升级,就可以干点轻松的事了,结果,下午多搞了2个小时,晚上又搞了2个小时,才搞定. 最后一个世界难题是,URL传递中文参数. 问题大致是这么出现的:我为"博客雷观" 这个栏目,增加了"全文搜索"功能,用lucene实现的.因此,需要传递中文参数.搜索框表单提交,传递中文,很简单就搞定了. 搜索之后的分页url,需要带上当前的"搜索词" ,比如"程序员",我在本地很轻松就搞定了.无非就是这样

JS URL传递中文参数时出现乱码的处理

原文:JS URL传递中文参数时出现乱码的处理 在浏览器中显示的地址是这样的: 但是按F12调试的时候的地址却变化掉了: 这个肯定是是因为浏览器对url路径默认编码了.这个问题是在我们去取值的时候,得到的就是后面那一大串稀奇古怪的东西.得不到我们想要的值.怎么办呢?这里写出来的只是自己的解决方法,也许不能通用,跟大家分享下,有更好的方法,告我一声.      //得到url中的值 function request(paras){ var url = location.href; var para

JS传递中文参数出现乱码的解决办法

一.window.open() 乱码: JS中使用window.open("url?param="+paramvalue)传递参数出现乱码,提交的时候,客户端浏览器URL中显示参数是正确的, 但是传到了服务器端是是乱码.这种情况下需要在客户端对该参数进行编码,然后在服务器端解码即可. 1.JS客户端编码: var selStr=document.getElementsByName('selStr')[0].value; selStr=encodeURI(encodeURI(selStr

SSH通过超链接传递中文参数出现乱码问题

通过超链接传递中文参数出现乱码问题 tomcat中的server.xml文件中修改如下配置: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>

java的url有中文参数导致乱码

话不多说,直接粘代码 发送方 UrlParaCode.jsp <%@ page language="java" import="java.util.*" pageEncoding="GBK"%> <html> <head> <title>My JSP 'UrlParaCode.jsp' starting page</title> </head> <body> &l

关于JAVA中URL传递中文参数的问题

今天在调用一个接口时,需要传递一个中文参数,结果获取不到数据,原因就在于中文传参的编码问题. 问题来源:URL url= new URL("http://XXX?OrganName=司法厅"); 现解决办法如下: 1.对要进行URL传递的中文字符进行编码: String message = Java.NET.URLEncoder.encode("司法厅","utf-8"); 2.在取URL传递中文的页面对字符进行解码: String msg =

URL传中文参数导致乱码的解决方案之encodeURI

通过URL传中文参数时,在服务端后台获取到的值往往会出现乱码问题,解决方案有很多种,本文主要介绍如何通过encodeURI来解决中文乱码问题: first:前端传递参数的时候需要对中文参数进行两次encodeURI处理: ?var requestUrl = 'url?roleName='+encodeURI(encodeURI("rowObj.appName")); 注:rowObj.appName?表示即将传到后台的带中文的字符串 ?second:在服务器端后台程序代码中要用java

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

在页面的url中使用encodeURI(encodeURI(中文)),对中文进行编码,并在服务器的java程序中使用URLDecoder.decode(中文, "UTF-8")进行解码即可; 如果url中需要传递+.#.?等特殊符号,可以使用encodeURIComponent(encodeURIComponent(中文)),服务器解码方法跟encodeURI的解码相同.