如何在<form>打开新窗口后刷新主页?

时间:2016-03-21 08:03:56

标签: javascript html forms page-refresh

我有一个表单,打开一个包含结果的新窗口。 为什么?因为新页面会将数据平移并在屏幕上生成PDF。 因此,以简单的形式,代码(比如index.php)看起来像这样:

<?
//loads data and finds the next availiable numerical (autoincrease) ID. e.g. $nextid=103;
?>
<form action=newpage.php method=post target=_blank>
Next Availiable ID: <input type=text name=id value="<?=$nextid?>"><br/>
Your Name: input type=text name=thename maxlength=64><br/>
<button type=submit>Go!</submit>
<form>

提交表单后,newpage.php将在新窗口中打开并生成pdf。当我返回index.php(带有表单的页面)时,我希望它能够刷新,以便获得一个新的可用id号。

我在按钮对象(onmouseup,onsubmit等)上尝试了javascript函数,但是加载页面不起作用。为了测试代码,我输入了一个警报(“测试”);命令,它运行!在加载页面或刷新当前页面时,它无法正常工作。

onclick =“loadUrl('http://somesite.com')”也不起作用。

现在我在newpage.php中使用控制代码绕过它,但我希望刷新页面以便PHP读取数据库。 有什么想法吗?

感谢您的时间。

2 个答案:

答案 0 :(得分:1)

试试这个;)

<form action="newpage.php" method="post" target="_blank" onsubmit="javascript: setTimeout(function(){location.reload();}, 1000);return true;">
  Next Availiable ID: <input type="text" name="id" value="<?= $nextid ?>"><br/>
  Your Name: <input type="text" name="thename" maxlength="64"><br/>
  <button type="submit">Go!</button>
</form>

答案 1 :(得分:0)

尝试将其放在表单标记中:

onsubmit = "document.location = 'http://somewebsite.com'"