通过js获得页面跳转参数

页面通过window.location.href或通过window.parent.location.href进行页面跳转,在新的页面如何获得相应的参数呢?

window.location.href方式

其中去除“#”号是因为url参数中还添加了#的参数。

function GetRequest(name) {
    var url = window.location.search; //获取url中"?"符后的字串
    // var theRequest = new Object();
    if (url.indexOf("?") != -1) {
        var str = url.substr(1);
        if(str.indexOf("#" != -1)){
            str = str.substr(0);
        }
        strs = str.split("&");
        for(var i = 0; i < strs.length; i ++) {
            if(strs[i].indexOf(name) != -1){
                return strs[i].split("=")[1];
            }
        }
    }
    return null;
}

window.parent.location.href

function GetRequest(name) {
    var url = window.parent.location.search; //获取url中"?"符后的字串
    // var theRequest = new Object();
    if (url.indexOf("?") != -1) {
        var str = url.substr(1);
        if(str.indexOf("#" != -1)){
            str = str.substr(0);
        }
        strs = str.split("&");
        for(var i = 0; i < strs.length; i ++) {
            if(strs[i].indexOf(name) != -1){
                return strs[i].split("=")[1];
            }
        }
    }
    return null;
}

这两者区别的地方是获取的url,与跳转的页面方式保持一直。

其他方式

网络上也提供了其他方式,可参照上面对应修改获得url的方式。

function GetRequest() {
 var url = window.location.search; //获取url中"?"符后的字串
 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;


js获得页面get跳转的参数插图

关注公众号:程序新视界,一个让你软实力、硬技术同步提升的平台

除非注明,否则均为程序新视界原创文章,转载必须以链接形式标明本文链接

本文链接:https://www.choupangxia.com/2019/08/04/js%e8%8e%b7%e5%be%97%e9%a1%b5%e9%9d%a2get%e8%b7%b3%e8%bd%ac%e7%9a%84%e5%8f%82%e6%95%b0/