Javascript中如何获取query string 的值?

0 投票
最新提问 2月 21 用户: 路人甲 (120 分)
Query中有没有一种不用插件的方式来取出query string的值?如果有的话怎么弄,没有的话有什么插件能做到吗?

2 个回答

0 投票
最新回答 2月 21 用户: 云在飞 (300 分)

试试这段代码

function getQueryVariable(variable) 
{ 
    var query = window.location.search.substring(1); 
    var vars = query.split("&"); 
    for (var i=0;i<vars.length;i++) 
    { 
       var pair = vars[i].split("="); 
       if(pair[0] == variable)
         {
           return pair[1];
         } 
    } 
    return(false); 
}

参考自:https://css-tricks.com/snippets/javascript/get-url-variables/

0 投票
最新回答 2月 21 用户: 山中狼 (140 分)
不需要使用jQuery。只需要JavaScript:
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, " "));
}

用法:

// query string: ?foo=lorem&bar=&baz
var foo = getParameterByName('foo'); // "lorem"
var bar = getParameterByName('bar'); // "" (present with empty value)
var baz = getParameterByName('baz'); // "" (present with no value)
var qux = getParameterByName('qux'); // null (absent)
欢迎来到编程助手,编程方面有什么不懂的问题可以尽管在这里提问,你将会收到热心爱好者的回答。
...