【问题标题】:How to get URL parameters with Dojo toolkit如何使用 Dojo 工具包获取 URL 参数
【发布时间】:2011-10-13 14:18:18
【问题描述】:

我需要知道如何从 URL 中获取参数。我的意思是如果有

   page1.html?id=12345 

我需要从 URL 中获取 id,我知道在 jQuery 中是 $.url.param("id");

但是在 Dojo 中是怎么做的呢?

【问题讨论】:

    标签: url dojo dojox.grid


    【解决方案1】:

    相关函数是dojo.queryToObject(string),它返回一个包含来自查询字符串的键值对的对象。这样,您可以使用任一

    dojo.queryToObject("id=12345").id
    

    dojo.queryToObject("id=12345")['id']
    

    请注意,此函数仅接收 url 的查询部分。您可以通过 document.location.search 获取此信息,正如 Ghislain 在 cmets 中提到的那样。

    【讨论】:

    • 我建议使用dojo.doc.location.search 来获取URL 的查询部分。你只需要删除领先的'?在将其传递给queryToObject 之前:dojo.queryToObject(dojo.doc.location.search.substr((dojo.doc.location.search[0] === "?" ? 1 : 0)))
    【解决方案2】:

    在新的 dojo 中使用 io-query 访问它:

    require([
        "dojo/io-query",
     ], function (ioQuery) {
        GET = ioQuery.queryToObject(decodeURIComponent(dojo.doc.location.search.slice(1)));
        console.log(GET.id);            
    });    
    

    【讨论】:

    • +1。请注意,dojo.doc 在 Dojo 1.8 中已弃用。如果使用 Dojo 1.9+,请改用 document
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    • 1970-01-01
    • 2019-12-07
    • 2018-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多