javascript - 是否有原生 jQuery 方法来提取单个 QueryString 项目?

标签 javascript jquery query-string jscript

给定一个这样的网址:http://mydomain.com/mypage.asp?Animal=Elephant

VBScript 提供了一种使用 Request 对象获取 QueryString 中的各个项目的好方法:

dim animal = Request.QueryString["Animal"]

我见过一些相当复杂的 JavaScript 可以做类似的事情,但我希望 jQuery 库有一个函数可以做到这一点,而不必重新发明一些轮子。我在我拥有的 jQuery 书中找不到它,在 jQuery 网站上也找不到它。

我是不是无缘无故地向树狂吠?有原生 jQuery 函数可以做到这一点吗?

请注意,我的问题是要求是否存在原生 JQUERY 函数来获取与我上面提供的 VBScript 相当的 QueryString。问题的单行解决方案。如:

var animal = $.getParameterByName("Animal");

我的问题只有 2 个可能的答案。他们是:

  1. 不,没有所描述的 native 单行 jQuery 函数,或者
  2. 是的,正如所描述的,有一个原生的单行 jQuery 函数,这里是......

我知道如何获取整个 QueryString 以及如何使用 Javascript 解析它 - 我不知道是否有 jQuery 方法或函数可以满足我的要求。

最佳答案

“不,没有所描述的 native 单行 jQuery 函数”

但是,改变这一点很容易。

(function($){
    function getParameterByName(name) {
        name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
        var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
            results = regex.exec(location.search);
        return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
    }
    $.getParameterByName = getParameterByName;
})(jQuery);

将其包含在 jquery 之后的 head 中,您现在可以简单地执行以下操作:

var animal = $.getParameterByName("Animal");

按名称获取参数的方法取自:How can I get query string values in JavaScript?

关于javascript - 是否有原生 jQuery 方法来提取单个 QueryString 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19437324/

相关文章:

jquery - 使用jQuery访问Grails中的消息属性文件

query-string - 虚拟 url 中的 urlrewritING.net 查询字符导致重定向循环

php - 在没有括号表示法的情况下访问 PHP 中的多个 GET 参数

javascript - 灯箱中的幻灯片转换错误

javascript - 用jquery删除按钮序列

javascript - 通过JS在灯箱中填充图像?

javascript - 如何增加拖动和滚动的平滑度

javascript - 多个元素,同一个类,获取一个元素的值 - jquery

reactjs - 如何通过查询参数将上一个React路由传递到下一个路由

javascript - 自动完成标签不显示数据