我有一个页面,用户可以在其中通过 POST 编辑带有过滤器的列表中的图片。当用户编辑内容时,它将在影子盒窗口中打开。然后在提交时使用以下代码重新加载父页面:
<script type="text/javascript">
noty({"text":"<?php if (isset($_GET["id"])){ echo "Foto modificada con éxito!"; }else{ echo "Foto creada con éxito!"; } ?>","layout":"center","type":"success","animateOpen":{"height":"toggle"},"animateClose":{"height":"toggle"},"speed":500,"timeout":5000,"closeButton":false,"closeOnSelfClick":true,"closeOnSelfOver":false, onClose:cerrar});
function cerrar(){
window.parent.open('index.php?sec=galerias_de_fotos', '_self');
}
</script>
问题是当我重新加载父页面时,我丢失了 POST 值,因此过滤器丢失了。我需要在关闭阴影框后刷新父页面而不会丢失过滤器。
我也试过:
function cerrar(){
parent.location.reload();
parent.Shadowbox.close();
}
这适用于重新加载,但不适用于维护 POST 值。罕见的是,如果我使用 F5 重新加载,POST 值会保持,但不是这样。
一种解决方案是在会话中保存帖子值。