我正在尝试获取当前页面的URL和参数,但JavaScript和jQuery正在返回上一页的URL。
我目前正在使用:
$(document).ready(function() {
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 sParameterName[1];
}
}
}
var charid = getUrlParameter('id');
var charname = getUrlParameter('name');
console.log(charid);
console.log(charname);
});
有时,如果我重新加载/刷新页面,它将为我提供当前/正确的URL。
编辑:我使用此代码设置上一页的链接
$.getJSON(ip + 'list_query.php', function(data) {
// data now contains array
for(var i = 0; i < data.length; i++)
{
var fl = data[i]['superhero_name'].slice(0,1);
$("#" + fl).append("<a href='" + ip + "biography.html?id=" + data[i]['id'] + "&name=" + data[i]['superhero_name'] + "'>" + data[i]['superhero_name'] + "</a");
}
});
答案 0 :(得分:1)
您是在寻找current page
网址还是previous page
网址,还是有相关条件?
对于current page
网址,请尝试:
console.log(window.location.href);
不幸的是,您无法嗅探访问者的历史记录,但如果您想在浏览域时跟踪他们的历史记录,则可以很容易地在LocalStorage中设置他们当前的页面:“window.location.href”,并命名密钥因此,因此创建一个列表/索引 - 甚至将其保存在cookie中。后者可以直接在PHP中使用;而前者(LocalStorage)可以通过XMLHTTpRequest发送到服务器。
如果由于javascript框架或插件而遇到此问题,请尝试暂时禁用它们并测试以查看是否获得相同的结果以便跟踪问题的根源。
<强>更新强>
关于Javascript框架,GitHub上的以下线程可能对以下内容有用: window.location issues
答案 1 :(得分:0)
使用vanilla JS获取当前页面的URL非常简单。这样做:
alert(document.location.href);
希望这有帮助!