1
当用户提交表单时,由于按下提交按钮后发送电子邮件需要花费很多时间。我想在提交浏览器后自动打开另一个标签供用户使用。我试着下面的代码,但不工作。页面正忙于加载时,新标签是否自动打开?
echo "<script>window.open('Cust_ledger.php?id=$required_name')</script>";
当用户提交表单时,由于按下提交按钮后发送电子邮件需要花费很多时间。我想在提交浏览器后自动打开另一个标签供用户使用。我试着下面的代码,但不工作。页面正忙于加载时,新标签是否自动打开?
echo "<script>window.open('Cust_ledger.php?id=$required_name')</script>";
我考虑到,要在当你提交一个表单新标签中打开网址,
试试这个jQuery代码,myForm
是表单的ID
$("#myForm").submit(function(){
window.open('Cust_ledger.php?id=$required_name', '_blank');
});
你会做这样的事情:
在线DEMO。
HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<a id="your_link" href="http://www.google.at" target="_blank">New Tab</a>
</body>
</html>
JS:
$(document).ready(function(){
window.setTimeout(function(){
var yourLink = document.getElementById("your_link").href;
var newOpenTab = window.open(yourLink, '_blank');
}, 5000);
});
你需要在提交之前做到这一点。即。在点击提交按钮上运行一个JavaScript函数'window.open('Cust_ledger.php?id = $ required_name')'代码 – Ravi
你可以让你的PHP发送表单响应之前,它处理其余的处理,然后用户在PHP脚本在后台工作的情况下会很快恢复控制,除非您有某些特定的原因让用户等待PHP完成。 – jfriend00