jquery获取url参数

使用jquery获取url以及使用jquery获取url参数是我们经常要用到的操作,下面通过文字说明加代码分析的形式给大家解析,具体详情请看下文。

1、jquery获取url很简单,代码如下:

javascript 复制代码
window.location.href;

其实只是用到了javascript的基础的window对象,并没有用jquery的知识。

2、jquery获取url参数比较复杂,要用到正则表达式

首先看看单纯的通过javascript是如何来获取url中的某个参数:

javascript 复制代码
//获取url中的参数
function getUrlParam(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
    var r = window.location.search.substr(1).match(reg); //匹配目标参数
    if (r != null) return unescape(r[2]); return null; //返回参数值
}

通过这个函数传递url中的参数名就可以获取到参数的值,比如url为

http://local:3000/qxmkclq/index.html?vid=015da6f7e74efdfe6557a032bc9740

我们要获取vid的值,可以这样写:

javascript 复制代码
var xx = getUrlParam('vid');

明白了javascript获取url参数的方法,我们可以通过这个方法为jquery扩展一个方法来通过jquery获取url参数,下面的代码为jquery扩展了一个getUrlParam()方法

javascript 复制代码
(function ($) {
    $.getUrlParam = function (name) {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
        var r = window.location.search.substr(1).match(reg);
        if (r != null) return unescape(r[2]); return null;
    }
})(jQuery);

为jquery扩展了这个方法了之后我们就可以通过如下方法来获取某个参数的值了:

javascript 复制代码
var xx = $.getUrlParam('vid');

完整代码:

html 复制代码
<script src="//cdn.staticfile.org/jquery/1.8.0/jquery-1.8.0.min.js" type="text/javascript"></script>
<script>
    $(function () {
       //方法二:
        (function ($) {
            $.getUrlParam = function (name) {
                var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
                var r = window.location.search.substr(1).match(reg);
                if (r != null) return unescape(r[2]); return null;
            }
          })(jQuery);
        //方法二:
        var xx = $.getUrlParam('reurl');
        //方法一:
        var xx2 = getUrlParam('reurl');
        alert(xx);
    });
    //方法一:
    //获取url中的参数
    function getUrlParam(name) {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
        var r = window.location.search.substr(1).match(reg); //匹配目标参数
        if (r != null) return unescape(r[2]); return null; //返回参数值
    }
</script>
相关推荐
Moment2 分钟前
不懂模块化就别谈前端工程化
前端·javascript·面试
majingming1237 小时前
FUNCTION
java·前端·javascript
A_nanda8 小时前
Vue项目升级
前端·vue3·vue2
SuperEugene8 小时前
Axios 接口请求规范实战:请求参数 / 响应处理 / 异常兜底,避坑中后台 API 调用混乱|API 与异步请求规范篇
开发语言·前端·javascript·vue.js·前端框架·axios
abigale039 小时前
【浏览器 API / 网络请求 / 文件处理】前端文件上传全流程:从基础上传到断点续传
前端·typescript·文件上传·vue cli
子兮曰9 小时前
Bun v1.3.11 官方更新全整理:新增功能、关键修复与升级验证
javascript·node.js·bun
Setsuna_F_Seiei9 小时前
AI 对话应用之页面滚动交互的实现
前端·javascript·ai编程
新缸中之脑10 小时前
追踪来自Agent的Web 流量
前端
wefly201710 小时前
从使用到原理,深度解析m3u8live.cn—— 基于 HLS.js 的 M3U8 在线播放器实现
java·开发语言·前端·javascript·ecmascript·php·m3u8
英俊潇洒美少年11 小时前
vue如何实现react useDeferredvalue和useTransition的效果
前端·vue.js·react.js