【问题标题】:Get dynamic query string paramters from URL - AngularJS从 URL 获取动态查询字符串参数 - AngularJS
【发布时间】:2015-02-04 08:42:13
【问题描述】:

我有一个查询字符串参数是动态的 URL。我需要在我的 JavaScript 中阅读它们。我所做的是

我已经使用下面的代码读取了所有的查询字符串参数。

例如:

// given url http://example.com/#/some/path?foo=bar&baz=xoxo
var searchObject = $location.search();
// searchObject  => {foo: 'bar', baz: 'xoxo'}

我还有一个带有键的数组。这里我的数组将有 foo 和 baz。

例如: var list = ["foo", "baz"];

那么如何使用列表数组中的键从 URL 中获取值?

我试过这个方法

for(var i=0; i<list.length; i++)
                {
                    alert(searchObject.list[i]);
                }

但这给了我一个控制台错误 searchObject.list is undefined.

我在这里做错了什么?有人可以帮忙吗?

【问题讨论】:

    标签: javascript angularjs query-string


    【解决方案1】:

    这应该是你想要的:

    for(var i=0; i<list.length; i++) {
        alert(searchObject[list[i]]);
    }
    

    循环遍历列表中的项目,将每个项目用作 searchObject 对象的键。

    http://jsfiddle.net/8vekqezj/

    【讨论】:

      【解决方案2】:

      可能正在使用 AngularJS 实用程序:

      angular.forEach(list, function(key){
        alert(searchObject[key]);
      });
      

      【讨论】:

        【解决方案3】:

        试试

        for(var i=0; i<list.length; i++)
        {
            alert(searchObject[list[i]]);
        }
        

        我不确定您为什么包含 list 属性,searchObject 只是(顾名思义)一个普通的旧 javascript 对象。

        【讨论】:

        • searchObject 是(如您所说)一个普通的旧javascript对象。那你为什么要用列表数组的索引来索引它呢?
        • 你是对的,我的错;)现在我们有相同的解决方案:D
        猜你喜欢
        • 2020-06-12
        • 1970-01-01
        • 2017-07-20
        • 2017-12-09
        • 1970-01-01
        • 2017-10-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多