2016-03-21 92 views
0

我有一个窗体,用结果打开一个新窗口。 为什么?因为新页面在屏幕上计算数据并生成PDF。 所以在简单形式的代码(可以说的index.php)看起来是这样的:如何在<form>打开新窗口后刷新主页?

<? 
//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函数,但加载页面不起作用。为了测试代码,我输入了一个警报(“test”);命令并运行!当涉及到加载页面或刷新当前页面时,它不会工作。

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

现在我正在用newpage.php中的控制代码绕过它,但我想要刷新页面以便PHP读取数据库。 任何想法?

谢谢你的时间。

回答

0

尝试把这种形式的标记内:

onsubmit = "document.location = 'http://somewebsite.com'" 
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>