繁体   English   中英

如何在Javascript中打开新页面而不单击链接

[英]How to open new page in javascript without clicking a link

我已经阅读了许多有关此问题的文章,并尝试了不同的方法,但是仍然遇到麻烦。 我在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;

首先,确保选择了任何一个选项,或者编写如下代码

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";

window.location.href = customURL;

它是window.location ,不是document.location ,更确切地说,它实际上是window.location.href

谢谢大家-最后找到了一种对我有用的新方法-使用document.input.action = customURL; 然后返回输入表单。 所以会坚持下去。 感谢您的建议和帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM