我需要你的帮助。我有一个编辑表单,在成功编辑记录后,它将重定向到另一个页面并自动显示模式,并从set_flashdata传递消息。
这是我到目前为止所尝试的:
查看
<button type="button" class="btn btn-primary btn-success" data-toggle="modal" data-target="#modalSuccess">
Modal Success
</button>
<div class="modal fade modal-success" id="modalSuccess" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Modal Success</h4>
</div>
<div class="modal-body">
<?php echo $message;?>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-success">OK</button>
</div>
</div>
</div>
</div>
控制器:
// check to see if we are updating the user
if($this->ion_auth->update($user->id, $data))
{
// redirect them back to the admin page if admin, or to the base url if non admin
$this->session->set_flashdata('message', $this->ion_auth->messages() );
if ($this->ion_auth->is_admin())
{
redirect('auth/profile/', 'refresh');
}
else
{
redirect('auth/profile/, 'refresh');
}
}
我不知道如何从set_flashdata接收消息后自动触发模态。有任何想法吗?我很乐意欣赏它。谢谢!
答案 0 :(得分:0)
Codeigniter会话集闪存数据仅在重定向时才有效。
目前,您已将重定向的闪存数据设置为
因为你正在使用刷新并重定向它,它将清除它。
if($this->ion_auth->update($user->id, $data)) {
// redirect them back to the admin page if admin, or to the base url if non admin
if ($this->ion_auth->is_admin()) {
$this->session->set_flashdata('message', $this->ion_auth->messages());
redirect('auth/profile');
} else {
$this->session->set_flashdata('message', $this->ion_auth->messages());
redirect('auth/profile');
}
}
查看回显flashdata
<?php echo $this->session->flashdata('message');?>
答案 1 :(得分:0)
在您的视图文件中,您应该输入:
<?php if ($this->session->flashdata('message')):?>
<script>
$('#modalSuccess').modal('show');
</script>
<?php endif;?>
确保您之前已加载jQuery.js
和bootstrap.js
。