将$ _GET变量赋给JS变量

时间:2011-06-24 04:15:52

标签: php javascript jquery get

www.mywebsite.com/?foo=bar

如何将foo的值变为Javascript变量?

4 个答案:

答案 0 :(得分:5)

你甚至不需要PHP。基本上,您可以解析window.location.href以将GET URL参数的值转换为JavaScript变量。

网上有很多代码,您可以使用this

function getUrlParameter( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

要获取foo的值,只需在JavaScript代码中调用getUrlParameter("foo")即可。

答案 1 :(得分:1)

您可以为查询变量解析window.location.search字符串。

https://developer.mozilla.org/en/DOM/window.location

例如

var query = window.location.search.substring(1);
var pairs = query.split('&');
var _get = {};
for (var i = 0; i < pairs.length; i++) {
    var pair = pairs[i].split('=');
    _get[pair[0]] = pair[1];
}

答案 2 :(得分:1)

答案 3 :(得分:1)

你可以试试这个

 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并将参数作为关联数组提供给你。你也可以尝试

function getURLVars(name) {
return decodeURI(
    (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
 );
}

如果您想要foo的值,请使用getUrlVars('foo')

调用此值