重新加载页面时是否有一种避免表单提交的好方法?
我正在考虑仅在单击按钮时添加jQuery提交功能,但也许我过度了。
只是想检查一下。
答案 0 :(得分:1)
成功提交表单后,执行重定向。无所谓,但它会清除$ _POST。
header('Location: http://www.example.com/form.php');
在您的情况下,听起来您想要重定向到您已经在的页面。如果要显示确认消息,请在URL中附加$ _GET参数。
这将阻止用户重新加载页面时重新提交表单。
答案 1 :(得分:1)
POST重定向GET。
答案 2 :(得分:1)
我假设您正在寻找按钮重新加载页面而不重新发送表单,以便他们可以发送另一个新信息?
IE:提交的联系表格。 现在你想要发送另一个"所以你需要重新加载页面再次呈现表单。
您可以使用jQuery函数重新加载页面而不是刷新。只需创建一个刷新功能,即#34;重定向"页面到同一页面。
如果使用jQuery
var reloadPage = window.location.href;
$('#[button]).on('click',function(){
window.location.replace(reloadPage);
});
使用PHP
获取页面的PHP代码
<?php
$url = (!empty($_SERVER['HTTPS'])) ? 'https://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] : 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
?>
jQuery重定向
<script type="text/javascript">
$(document).ready(function(e){
$('#[button]).on('click',function(){
window.location.replace('<?php echo $url;?>');
});
});
答案 3 :(得分:0)
如果你将jQuery添加到混合中,没有javascript的人将无法再使用你的表单了。您最好的解决方案是确保表单不能在后端发送两次。