假设有一个页面将数据插入数据库
page1.php
//INSERT CODE
//HTML FORM
当我访问page1。php时,顶部的url是这样的
www.abc.com/page1.php
如果我在网站的首页,url似乎是
www.abc.com/home
在同一页面,我可以通过jquery ajax调用调用其他页面的div,但url似乎没有改变。即使我调用任何其他页面的url也不会改变…
我要找的是一个解决方案,当我调用page1.php相同的页面是home.php url改变像这样
www.abc.com/home?view=page1
或
www.abc.com/home/page1
,也我必须写page1.php功能的数据库插入在home.php?
所以你不能改变URL而不重定向。你能做的就是改变哈希值。这不会重定向,但会在URL中显示值。
// AJAX CALL
// GET NAME OF PAGE YOU CALLED
// SET IT TO "var toHash"
// Whenever AJAX call finishes make a callback function with this code.
document.location.hash = toHash;
// or you can something like this for each time it changes at all.
window.onhashchange = function(){
var doThis = document.location.hash;
if (doThis=="#thisLink")
doSomething();
}
你可以通过
var myNewUrl = 'www.abc.com/home?view=page1';
window.history.replaceState('', '', myNewUrl);
不需要jQuery。window.location.replace()将模拟HTTP重定向。
window.location.replace("http://google.com");