您好,我正在为get ajax
内容使用纯 javascript ,而没有页面加载。
document.getElementById('dashboard').addEventListener('click', dashboard);
function dashboard(){
var xhr = new XMLHttpRequest();
xhr.open('GET', 'dashboard.php', true);
xhr.onload = function(){
if(this.status == 200){
history.pushState(null, null, '#dashboard.php');
document.getElementById('content').innerHTML = this.responseText;
} else if(this.status = 404){
document.getElementById('content').innerHTML = 'Not Found';
}
}
xhr.onerror = function(){
console.log('Request Error...');
}
xhr.send();
}
此代码可以完美地工作,但是当我手动刷新页面时,内容会回到初始页面。如果我打开表单页面,并且在手动刷新后,网站将显示“仪表板”页面。
即使刷新后,我也希望保留在当前页面上。谢谢。
答案 0 :(得分:0)
我了解到您仅使用JavaScript和ajax,但最简单和广泛使用的方法是使用 PHP会话变量,因为您使用的是get方法,因此可以轻松实现。如果您设置了一个PHP会话变量,无论刷新多少次,它都会通过隐藏或重定向(通过选中会话变量)来显示您想要显示的页面。您可以检查以下链接:{ {3}}
答案 1 :(得分:0)
此代码可以完美运行,谢谢大家!
SELECT REPLACE (CONVERT(VARCHAR(255), NEWID()), '-', '') AS ColA,
ROW_NUMBER() OVER (ORDER BY ( SELECT 1)) AS RowNumb
INTO #Varchar
FROM sys.all_objects AS S
CROSS JOIN sys.all_objects AS S2
SELECT CAST (ColA AS NVARCHAR (255)) AS ColA,
RowNumb
INTO #Nvarchar
FROM #Varchar
SELECT TOP 1000000 *
INTO #Subset
FROM #Varchar
CREATE INDEX i_VarcharColA ON #Varchar (ColA)
CREATE INDEX i_NvarcharColA ON #Nvarchar (ColA)
CREATE INDEX i_SubsetColA ON #Subset (ColA)
SET STATISTICS IO, TIME ON
SELECT COUNT(*) AS CountStar
FROM #Varchar AS V
INNER JOIN #Subset AS S ON V.ColA = S.ColA -- matching datatypes
SELECT COUNT(*) AS CountStar
FROM #Nvarchar AS V
INNER JOIN #Subset AS S ON V.ColA = S.ColA -- non-matching datatypes