2013-10-20 135 views
2

我在一个php页面中绘制了一个棋盘。每件作品都被设置为可拖拽,并且每块瓷砖都可以放置。一旦一块被扔在一块瓷砖上,我想重新加载php页面,这样板子就可以和新的位置一起重新绘制。 我该怎么做:使用javascript重新加载php页面,而不显示窗口等要求确认的窗口,例如“要显示此页面,Firefox必须发送将重复执行的任何操作(例如搜索或订单确认)先前 - >取消;重新发送“?使用javascript重新加载php页面

或者也许有更好的解决方案?

+0

使用GET而不是POST将信息发送到服务器。 – Ratzor

回答

5

如果你想避免刷新报表数据(以任何理由,包括用户点击刷新按钮),然后使用POST-REDIRECT-GET模式(http://en.wikipedia.org/wiki/Post/Redirect/Get)。阅读它,它会解释做什么。

快速的解决方案:你可以尝试:

window.location.reload(true); //true sets request type to GET 

使用GET,而非POST和你所得到的对话框会自动消失。

祝你好运!

+0

谢谢。它会重新加载php文件。但是确认窗口仍然弹出。此外,看起来我的作品需要更多时间才能出现在我的主板上,而他们没有时间出现在没有javascript的情况下。这是正常的事情吗? –

+0

您确定使用GET而不是POST来向服务器发送信息吗?它应该只发生在使用POST时......而且是正常的。你必须优化你的代码:) – 2013-10-21 01:04:04

+0

是的,谢谢它现在正在工作:) 虽然我认为我会直接修改DOM以移动件在JavaScript中。 –

1

利用

window.location.reload(); 
1

会自动刷新

<script> 
    var timer = null; 
    function auto_reload() 
    { 
     window.location = 'http://domain.com/page.php'; //your page location 
    } 

</script> 


<!-- Reload page every 10 seconds. --> 
     <body onload="timer = setTimeout('auto_reload()',10000);"> 

参考http://davidwalsh.name/automatically-refresh-page-javascript-meta-tags

+0

谢谢,这很有用 –