我已阅读了很多关于此的帖子并尝试了不同的方法,但我仍然遇到了麻烦。我在php页面中有一个html表单,当用户单击屏幕上的按钮时,它有一个onClick命令来运行javascript验证过程。这一切都很好,但在验证结束时,我想根据customURL变量(包含正确的URL)的值在同一个选项卡中打开一个新的php页面。但页面只会重新加载,而不是新页面。我试过了window.location.href,location.href和document.location。有没有人有任何想法为什么这些都不起作用,或者可以建议另一种方法?谢谢。
if(optionChosen == "overview") { customURL ='overview.php'; }
if(optionChosen == "tasks") { customURL ='tasks.php';}
if(optionChosen == "guidance") { customURL ='guidance.php';}
if(optionChosen == "feedback") { customURL ='feedback.php';}
if(optionChosen == "progress") { customURL ='progress.php';}
customURL = customURL + "?uid=" + unitChosen;
document.location = customURL;
答案 0 :(得分:3)
首先确保选择了任何选项,或者像这样编写代码
if(optionChosen == "overview") { customURL ='overview.php'; }
else if(optionChosen == "tasks") { customURL ='tasks.php';}
else if(optionChosen == "guidance") { customURL ='guidance.php';}
else if(optionChosen == "feedback") { customURL ='feedback.php';}
else { customURL ='progress.php';}
当用户在浏览器中点击“返回”时,使用此选项可避免重定向
window.location.replace('http://somewhereelse.com');
使用此方法重定向,后退按钮调用将再次触发重定向
window.location.href = "http://somewhereelse.com";
鉴于完整性,本质上是window.location.href的别名
window.location = "http://somewhereelse.com";
答案 1 :(得分:2)
做window.location.href = customURL;
答案 2 :(得分:1)
它是window.location
,而不是document.location
,更确切地说,它实际上是window.location.href
答案 3 :(得分:0)
谢谢大家 - 最终找到了一种适合我的新方法 - 使用 document.input.action = customURL; 并返回输入表单。 所以会坚持这一点。感谢您的建议和帮助。