这个不叫乱码,我非专业。这个是url编码,js本身就是读取url编码的。对于js获取url的中文你可以尝试用escape() encodeURI() encodeURIComponent() decodeURI()

来使js停止或者转换url编码

直接看代码吧。

第一个html,取名叫  a.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>第一页</title>
</head>
<body>
<a href="b.html?id=1&name=胖娘子">点我带参数跳转</a>
</body>
</html>

  第二个页面,获取参数的页面,取名叫   b.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>接受参数页</title>
</head>
<body>
我是接受参数页
</body>
<script type="text/javascript" charset="UTF-8">
//获取参数方法
function GetUrlParam(name){
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
//使用获取参数方法
var id= GetUrlParam("id");
var name = GetUrlParam("name");
console.log("id:"+id+" name:"+name); </script>
</html>

  我以上的写法最后得出来的结果是


接下来看看如何解决

encodeURI()转码,decodeURI()解码

<script type="text/javascript" charset="UTF-8">
//获取参数方法
function GetUrlParam(name){
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = encodeURI(window.location.search).substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
//使用获取参数方法
var id= GetUrlParam("id");
var name = decodeURI(GetUrlParam("name"));
console.log("id:"+id+" name:"+name);
</script>
最后获取的结果


用encodeURI()函数对地址栏进行转码,然后用decodeURI()函数进行解码

就完美解决问题了,亲自实践,确实可行。

两个HTML地址栏传中文参数乱码的更多相关文章

  1. Tomcat地址栏传中文参数乱码问题处理

    javascript中有时需要向后台传递中文参数,再次展示到前台时显示为乱码,解决方案: 方案1:修改Tomcat-conf-server.xml文件 大约69-71行  修改为: <Conne ...

  2. asp.net——地址栏传递中文参数乱码解决方案

    地址栏传递中文参数乱码解决方案: 很多人在使用地址栏传递参数的时候都会遇到一个麻烦的问题(参数为中文时乱码了),那要怎么解决呢? 其实解决这个问题也不怎么难,无非就是给要传递的中文参数一个编码解码的过 ...

  3. 关于window.location.href 传中文参数 乱码问题

    传中文查询乱码问题 则需要对要传的参数进行二次编码 例如  window.location.href ="/xx.jsp?name="+name+""; 这样子 ...

  4. 火狐浏览器URL中传中文参数乱码问题

    火狐浏览器:前端页面传中文 <span data-bind=" check_action:'roleMenuPriv'"> <a data-bind=" ...

  5. AJAX在GBK编码页面中传中文参数乱码的问题

    ---恢复内容开始--- 页面编码是GBK的情况下传递中文有乱码,解决方法如下: 在ajax传递前用若是Array,JSON,等其它对象,可用JSON.stringfy字符串序列化后,赋值给ajax传 ...

  6. 通过url给action传中文参数乱码解决方案

    比如: http://localhost:8080/projectName/dutyCondition.action?admitstate=0&currentStep=我的博客 传到后台的时候 ...

  7. get传中文参数乱码解决方法

    通常我们前端不同页面之间传参数用得最多的方法就是get方法:在url后面加上参数.例如:www.test.com?id=1&name=hello. 英文和字母很好处理,但是如果有的参数值为中文 ...

  8. IE下get方式传中文参数乱码解决方法

    乱码原因:浏览器在传递url的时候,会使用自己的编码格式对地址进行编码,如果浏览器所使用编码与服务器采用编码不一致,服务器接收到的参数就会出现乱码.在firefox,chrome下正常,ie下会出现乱 ...

  9. javaweb使用 window.location.href 传中文参数 乱码问题

    JS: var cn_name=  document.getElementById("cn_name"); window.location.href="${URL}?na ...

随机推荐

  1. CSS3 box-sizing属性的应用

    在一个文档中,每个元素都被表示为一个矩形的盒子.盒子模型具有4个属性['外边距(margin)','边框(border)','内边距(padding)','内容(content)']. 我们要设置某个 ...

  2. Android 之异步加载LoaderManager

    LoaderManager: Loader出现的背景: Activity是我们的前端页面展现,数据库是我们的数据持久化地址,那么正常的逻辑就是在展示页面的渲染页面的阶段进行数据库查询.拿到数据以后才展 ...

  3. Unity Destory

    Object.Destroy     public static function Destroy(obj: Object, t: float = 0.0F): void; public static ...

  4. 【java】java反射初探 ——“当类也照起镜子”

    反射的作用   开门见山地说说反射的作用 1.为我们提供了全面的分析类信息的能力 2.动态加载类   我理解的“反射”的意义 (仅个人理解) 我理解的java反射机制就是: 提供一套完善而强大的API ...

  5. xml解析案例

    步骤:Channel是java bean类 public static List<Channel> parsexml(InputStream inputStream) {//注意服务器种是 ...

  6. Jquery Ajax type的4种类型

    Ajax type这个里面填什么呢?通常大家都会说get和post.那么还有2个是什么呢 $.ajax({ url: 'http://www.cnblogs.com/youku/', type: '' ...

  7. getField()和select()方法的区别

    在ThinkPHP中,查询数据库是必不可少的操作. 那么,getField()方法和select()方法都是查询的方法,到底有什么不同呢? 案例来说明: A.select()方法 例子1 $acces ...

  8. 剑指offer(纪念版)读书笔记【实时更新】

    C++ 1.STL的vector每次扩充容量,新容量是前一次的两倍. 2.32位机指针大小为4个字节,64位机指针大小为8个字节. 3.当数组作为函数参数传递时,数组会自动退化成同类型指针. 4. & ...

  9. SpringMVC学习笔记(二)

    一.导航 复杂类型的参数绑定 校验 异常处理 图片上传 json交互 拦截器 二.复杂类型参数绑定 ①.包装类型的pojo参数绑定 使用场景:实现商品查询条件传入. 实现方法:>通过添加Http ...

  10. UIAlertController基本使用与内存泄露分析!!!

    最近开发过程中,发现内存会无故增加,在做内存优化的过程中,无意间发现了内存泄露的情况,那就是从iOS8.0 苹果开始推荐我们使用的UIAlertController!!! 看到这你是不是会嘲笑我第一次 ...