JQuery url GET变量

时间:2016-06-08 10:39:54

标签: php jquery

我有可能在jQuery url中使用GET变量。就像在PHP中一样,我们有类似的东西:

header('location : path/to/page.php?id='.$id);

在page.php中我们这样做:

$id = $_GET['id'];

所以在jQuery中我们可以做类似的事情:

window.location.replace(path/to/page.html/* and pass the url query here*/);

4 个答案:

答案 0 :(得分:3)

我认为你要找的是在javascript中访问查询字符串(php中的$ _GET)变量。您可以使用此功能。

function getParameterByName(name, url) {
    if (!url) url = window.location.href;
    name = name.replace(/[\[\]]/g, "\\$&");
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, " "));
}

然后致电getParameterByName('id')以获取当前网址的?id=val部分。

答案 1 :(得分:0)

您还可以使用location.replace将数据传递到其他页面:

 idVal = 1;
 window.location.replace("path/to/page.php?id="+idVal);

答案 2 :(得分:0)

使用js函数执行此操作...

   var getUrlVars = function(){
        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(decodeURIComponent(hash[0]));
            vars[decodeURIComponent(hash[0])] = decodeURIComponent(hash[1]);
        }
        if(vars[0] == window.location.href){
            vars =[];
        }
        return vars;
    }

然后你想用什么

var params = getUrlVars();
console.log(params["id"]);
console.log(params["whatever"]);

您可以随意使用它。

答案 3 :(得分:0)

该物业&#39;搜索&#39;的位置&#39; javascript对象将为您提供url的查询字符串参数,例如:

url:http://www.w3schools.com/submit.htm?email=someone@example.com

console.log(location.search);
// output: ?email=someone@example.com

之后你可以按照自己的意愿解析它