【问题标题】:Get query string parameter from URL in JavaScript从 JavaScript 中的 URL 获取查询字符串参数
【发布时间】:2017-07-20 01:12:24
【问题描述】:

我正在寻找一种从 url 中提取查询参数及其对应值的方法。

例如。如果我有网址:http://example.com/home?key=value

如何找到key的值

【问题讨论】:

  • 按window.location,iframe的窗口
  • 您到底想得到什么?你能举个例子吗?
  • 请阅读How to Ask。关键词:“搜索和研究”和“解释......任何阻碍你自己解决的困难”。

标签: javascript regex url dom


【解决方案1】:

使用此功能。它的灵感来自riot.route.query()

getQuery( [url] ) 在window.location.href 或可选的url 参数的查询中返回一个包含每个key、value 对的对象。

var iFrameUrls = [
    'http://www.kk.com/home/add.do?select=inputText',
    '?select=verifyText&this=foo%20bar',
    'http://www.kk.com/home/add.do?select=confirmText'
    ];

function getQuery(url) {
    var query = {},
        href = url || window.location.href;
        
    href.replace(/[?&](.+?)=([^&#]*)/g, function (_, key, value) {
        query[key] = decodeURI(value).replace(/\+/g, ' ');
    });
    
    return query;
}

for (var i = 0, l = iFrameUrls.length; i < l; i++)
  console.log( getQuery( iFrameUrls[i] ) );

【讨论】:

  • 嘿,谢谢。但是我们有多个页面,它们的查询参数会根据我们所在的页面(select=inputText,select=enterText)而变化,因此我们需要一个代码来捕获当前值以查找我们所在的页面
  • 您能否举例说明您希望从 URL 中检索到的内容?
  • www.kk.com/home/add.do?select=inputText | www.kk.com/home/add.do?select=verifyText | www.kk.com/home/add.do?select=confirmText |我们在 iframe 中使用上述示例 URL 执行了一些步骤。第一页要求输入,第二页要求我们验证,第三页给我们确认。现在,如果能够从 iFrame URL 中捕获目标值,我们将知道用户在哪一步
  • 所以你在寻找select = inputText、enterText等?
  • 是的,没错!贾斯汀
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-06-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-07
  • 1970-01-01
相关资源
最近更新 更多