日期:2014-05-16  浏览次数:20373 次

js获取url中的参数,url中传递中文的时候通过js解码的方式

如果传递的参数是:

<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]]);