使用jquery获取urljquery url获取参数,使用jquery获取url参数是我们经常使用的操作
1.用jquery获取url很简单,代码如下:
window.location.href;
其实只用到了javascript的基本window对象,并没有用到jquery的知识。
2、jquery获取url参数比较复杂,需要正则表达式,所以学好javascript正则表达式是多么重要
首先,我们来看看如何简单地通过javascript获取url中的参数:
//获取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为
:33064/WebForm2.aspx?reurl=WebForm1.aspx
我们想要获取reurl的值,我们可以这样写:
var xx = getUrlParam('reurl');
了解了javascript获取url参数的方式,我们可以利用该方法来扩展jquery通过jquery获取url参数的一种方式,下面的代码为jquery扩展了一个getUrlParam()方法
(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 后jquery url获取参数,我们可以通过以下方式获取参数的值:
var xx = $.getUrlParam('reurl');
完整代码:
$(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 xx = 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; //返回参数值 }