【问题标题】:Java script URL Loader and URL VarialblesJavascript URL 加载器和 URL 变量
【发布时间】:2013-08-30 09:18:53
【问题描述】:

我有一个文本文件的 URL,它指定了我的菜单控制器的名称以及我是否处于调试模式等...... 例如。 menudriver=MenuController.aspx&debug=true&webroot=https://somewebsite.com

现在我想做的是将它加载到 javascript 中的一个变量中,然后每个 URL 变量也保存到某个数组中。

完成此操作后,我将拥有一个根据从单独 URL 接收到的内容动态填充的菜单。这是一个 as3 示例: var request:URLRequest = new URLRequest(WebRoot+fill+CallerURI+"?KR_ID="+Math.random());

这个 URL 基本上包含标签以及我菜单中按钮的 URI。

javascript 是如何做到的? 我在 as3 中确实有一个完整的实现,但我正在努力寻找 javascript 替代品。

【问题讨论】:

  • 什么是URLRequest?还是那无关紧要?
  • 这是使用 jQuery 从查询字符串gist.github.com/jcubic/3004101 创建查询关联数组的代码,但没有它也可以完成。
  • @jcubic 我喜欢那个 jquery 函数。似乎它会做我想要的。我只是想知道有人会如何在 javascript 中做到这一点。
  • @FritsvanCampen URLRequest 是 actionscript 3 内置函数。 javascript中没有等价物。必须在 javascript 中手动实现。

标签: javascript actionscript-3


【解决方案1】:

在回复评论,纯javascript解决方案

var query = (function() {
    function decode(string) {
        return decodeURIComponent(string.replace(/\+/g, " "));
    }
    var result = {};
    if (location.search) {
        location.search.substring(1).split('&').forEach(function(pair) {
            pair = pair.split('=');
            result[decode(pair[0])] = decode(pair[1]);
        });
    }
    return result;
})();

它使用ECMAScript 5函数forEach,如果你需要支持不支持它的浏览器,你可以使用es5-shim

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-12
    • 1970-01-01
    • 2017-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多