我正在自定义 OpenCart 3。
通过单击首页页脚中的按钮,将打开一个包含 的模式面板iframe
,如下所示:
<footer>
<div class="container">
<div class="content">
<i class="fa fa-plus-circle" aria-hidden="true" data-toggle="modal" data-target="#myModal"></i>
<div class="modal fade bd-example-modal-lg" id="myModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fa fa-times-circle" aria-hidden="true"></i></button>
<iframe width="100%" height="{{ img_h }}" src="{{ addnewpro }}"></iframe>
</div>
</div>
</div>
</div>
</div>
iframe
包含一个用于输入新产品的 php 页面,该页面位于管理面板中。
到目前为止一切正常!问题是我在输入新产品并保存后找不到关闭打开的modal
(#myModal)的方法。我尝试了许多不同的方法,包括会话等。
我在 php 页面中添加产品后创建了会话:
$this->session->data['newprosaved'] = 'saved';
我在页脚的 php 页面中检查了会话:
if (isset($this->session->data['newprosaved'])) {
$data['saved'] = $this->session->data['newprosaved'];
unset($this->session->data['newprosaved']);
}
然后尝试在footer.twig中访问它:
<script type="text/javascript"><!--
$(document).ready(function() {
if ('{{ saved }}' == 'saved' && $('#myModal').hasClass('in')) {
$('#myModal').modal('hide');
$('#myModal').remove();
}
});
</script>
但它不起作用!
有没有其他方法可以做到这一点?