地址栏中文参数在页面中出现乱码问题

项目中碰到一个问题:

 在搜索框写入中文数据在发送请求时,同时跳转到另外一个page,把获取的中文数据写入input的value中。但是获取到中文的数据变成乱码 

<input  class="input_page" />

解决办法:

请求时,在获取到数据加入地址栏之前对中文进行俩次转码 当前页面执行转码

var url="跳转的页面";

var text=$(".input_page").val();

var t=encodeURI(encodeURI(text));

window.location.href=url+"?search="+t;

在跳转页面中截取需要的数据

//获取地址栏参数的方法
        function getQueryString(name) {
            var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
            var r = window.location.search.substr(1).match(reg);
            if (r != null) return unescape(r[2]); return null;
        }

     var t = getQueryString("search");

     var text = decodeURI(t);

  然后把获取的text写入页面input的value中就OK了!

已项目实践!!!

  

猜你喜欢

转载自blog.csdn.net/weixin_43650690/article/details/84848442