使用jQuery从URL获取数据是否可能?
例如,如果您有www.test.com/index.html?id=1&name=boo
,
如何获取id和name?
使用jQuery从URL获取数据是否可能?
例如,如果您有www.test.com/index.html?id=1&name=boo
,
如何获取id和name?
试试这个。它是纯JavaScript,不涉及jQuery。事实上,对于这样的任务,jQuery太重了。
function GetURLParameter(sParam)
{
var sPageURL = window.location.search.substring(1);
var sURLVariables = sPageURL.split('&');
for (var i = 0; i < sURLVariables.length; i++)
{
var sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] == sParam)
{
return decodeURIComponent(sParameterName[1]);
}
}
}
var id = GetURLParameter('id');
var name= GetURLParameter('name');
使用decodeURIComponent来允许参数值包含任何字符,例如非常重要的等于号=
、和号&
或问号?
。
id
和 name
,那么这就是一个简单的问题。var url = "www.test.com/index.html?id=1&name=boo";
var id = /id=(\d+)/.exec(url)[1];
var name = /name=(\w+)/.exec(url)[1];
在这里,我已经为上述问题提供了完整的解决方案。请检查下面显示的演示链接。
首先,在头部标签中引入最新的jquery.js和querystring-0.9.0.js脚本文件。
演示:http://codebins.com/bin/4ldqpac
HTML
<a href="#?param1=abc¶m2=def">
abc
</a>
JQuery
$(function() {
$("a").click(function() {
setTimeout(function() {
var param1 = $.QueryString("param1");
var param2 = $.QueryString("param2");
alert(param1);
alert(param2);
}, 300);
});
});
试试这个:在IE和Chrome中都可以正常工作。通过JavaScript获取查询字符串的值。
$.urlParam = function(name){
var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
if (results == null){
return null;
}
else {
return decodeURI(results[1]) || 0;
}
}
var getData= $.urlParam('emailid');
URLSearchParams
对象来解析 URL 查询字符串并获取其值。以下是示例代码:const urlParams = new URLSearchParams(window.location.search); const myParam = urlParams.get('myParam');
其中window.location.search
包含查询字符串部分(即 URL 中?
之后的部分)。然后,您可以使用get
方法检索特定参数的值。 - wroniasty