js获取url中的参数且参数为中文时通过js解码

 更新时间:2014年03月19日 16:00:05   投稿:whsnow  
这篇文章主要介绍了url中传递中文参数的时候通过js解码,需要的朋友可以参考下

js页面传递参数为中文乱码问题解决方法

js的页面传递中,如果url有携带中文参数传递,会出现乱码,解决办法如下:

给所传递的参数加上两层的转码 encodeURI(encodeURI(Name))

并且在接收的页面对参数加上两层的解码 decodeURI(decodeURI(Name))

如果传递的参数是:

<a href="${pageContext.request.contextPath}/productdisplay/productDisplay_productDisplayUI.action?pkId=${pkId}&name=${name}" style="color:white; margin-top:10px; margin-bottom:10px;">${name}</a>

获取url参数的js如下:

/** 初始化加载结束 */
function getUrlVars(){
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?')+1).split('&');
for(var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}

如果url中有中文,则取参数的时候会有中文乱码,得用decodeURI()方法解码,方式如下:

//获得所属分类的pkId
var params = getUrlVars();
//获得此中分类的id
var parentId = params[params[0]];
//获得分类的名称
var productName = decodeURI(params[params[1]]);

到此这篇关于js获取url中的参数且参数为中文时通过js解码的文章就介绍到这了,更多相关url中文参数 js解码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

最新评论