jquery获取地址栏参数
获取地址栏参数的方法
在jQuery中,可以通过解析window.location.search来获取地址栏中的参数。以下是几种常见的方法:

使用原生JavaScript解析URL参数
function getUrlParameter(name) {
name = name.replace(/[\[\]]/g, '\\$&');
var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
results = regex.exec(window.location.search);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, ' '));
}
// 使用示例
var paramValue = getUrlParameter('paramName');
使用jQuery扩展方法
可以将上述方法封装为jQuery的扩展方法,方便全局调用:

$.extend({
getUrlParam: function(name) {
name = name.replace(/[\[\]]/g, '\\$&');
var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
results = regex.exec(window.location.search);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, ' '));
}
});
// 使用示例
var paramValue = $.getUrlParam('paramName');
使用URLSearchParams API
现代浏览器支持URLSearchParams API,可以更简洁地获取参数:
var urlParams = new URLSearchParams(window.location.search);
var paramValue = urlParams.get('paramName');
注意事项
- 如果参数中包含特殊字符(如
+、&等),需要进行解码处理。 - 对于多值参数(如
?param=value1¶m=value2),URLSearchParams会返回第一个值,而其他方法需要额外处理。 - 在不支持
URLSearchParams的旧浏览器中,建议使用原生JavaScript方法或jQuery扩展方法。
以上方法可以根据项目需求选择使用,推荐优先考虑URLSearchParams API,因其简洁且现代浏览器广泛支持。






