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

关于JS获取URL后携带参数的问题
关于JS获取URL后携带参数,遇到了一写小问题,求高手指点一二。
  问题是这样的,先写了一个最普通的JS脚本,代码如下:
JScript code

function getString(){
    var url = location.search;
    var therequest = new Object();
    if(url.indexOf("?")!= -1){
        var str = url.substr(1);
        strs = str.split("&");
        for(var i = 0;i<strs.length,i++){
            therequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
        }
    }
    return therequest;
}


  接下来可以获取到正常的参数,但是今天遇到的参数有些特殊,附带的参数里面就有等于号“=”例如(url?para=(qx = 'aaa')&param=(qx1='bbb')),按程序写的则将这个等于号分割,这也就把传递的参数破坏了,求教高手有什么解决方案吗?

------解决方案--------------------
therequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]+"="+strs[i].split("=")[2]);