jquery从uri获取var

时间:2011-03-21 16:30:27

标签: jquery url variables uri

我有两页page1.php和page2.php,在page1.php上我点击一个href和那个链接到某个地方的page2.php ...

在page2.php中有4个扩展器,隐藏或关闭页面加载...

问题:我想从第1页到第2页我希望看到哪个扩展器OPEN

类似于page1 href =“page2.php?open = 1”

并且在page2.php上有一个jquery,用于检索open var,并且在pageload之后只展开那个...

我有研究谷歌,并附带:https://github.com/allmarkedup/jQuery-URL-Parser

没有插件可以做到吗?

2 个答案:

答案 0 :(得分:2)

具体答案:

var expanderNo = (location.search.match(/open=(\d+)/) || [])[1]

但如果您的目的是链接到页面的特定部分,那么URL fragment更合适。根据网址/page2.php#expander1,您可以使用expander1检索location.hash.substr(1)部分。

答案 1 :(得分:0)

这是一种通用的方式,可能不是最好的,但我手头有代码,所以我想分享。

    function getVars(){
        var vars = new Array();
        var query = window.location.search.substring(1);
        var parms = query.split('&');
        for (var i = 0; i < parms.length; i++) {
                var pos = parms[i].indexOf('=');
                if (pos > 0) {
                        var key = parms[i].substring(0, pos);
                        var val = parms[i].substring(pos + 1);
                        vars[key] = val;
                }else{
                        return Array();
                }
        }
        return vars;
   }

它将为每个参数返回一个键值对。

如果您事先知道参数,那么另一个答案(Alexey's)会更好。