在CodeIgniter中使用redirect()的Bootstrap模式

时间:2017-06-22 08:50:09

标签: codeigniter

如何在CodeIgniter中使用redirect()打开Bootstrap模式? 要么 如何在模型的视图中执行具有特定id的特定div?

我正在尝试在同一页面中成功提交表单时打开Bootstrap模式。

3 个答案:

答案 0 :(得分:1)

Pass the value for success variable from controller
<script type="text/javascript">
<?php if( $success == TRUE ){
?>
    $('#myModal').modal('show');
<?php 
}
?>
</script>

<div class="modal hide fade" id="myModal">
  <div class="modal-header">
    <a class="close" data-dismiss="modal">×</a>
    <h3>Modal header</h3>
  </div>
  <div class="modal-body">
    <p>One fine body…</p>
  </div>
  <div class="modal-footer">
    <a href="#" class="btn">Close</a>
    <a href="#" class="btn btn-primary">Save changes</a>
  </div>
</div>

答案 1 :(得分:1)

根据question的答案:

步骤1)将Modal的HTML放入视图文件中(在从控制器完成处理后显示)。

步骤2)从控制器中放入一些闪存数据,以便您可以满足显示弹出窗口的条件。

步骤3)关于视图检查闪存会话数据是否已设置。 我已经为控制器和视图文件提供了代码。

修改 如果你想重定向到同一页面,那么你必须在ajax的帮助下完成所有处理:

$.ajax({
    type: 'POST',
    url: "url/to/your/controller/function",
    success: function(response){
        if(response == "Success"){
            $('#thankyouModal').modal('show');
        }else{
            alert("Something just went wrong, Please try again later...");
        }
    },
    error: function(){ 
        alert("Something just went wrong, Please try again later...");
    }
});

答案 2 :(得分:0)

您可以按以下方式设置闪光数据

   public function insert($data) {
        // Inserting into your table
        // Calling model
        $done = $this->db->insert('sign_up', $data);
        // You can do something else here
        if($done) {
          //You can set the message and variable name as per your need.
          $this->session->set_flashdata('inserted','Yes');
          //Redirect to the desired view file
          redirect("controller/anotherfunction_where_view_file_is_loaded");
        }

请注意&#34; $ this-&gt; session-&gt; set_flashdata(&#39;插入&#39;,&#39;是&#39;);&#34;

在此行中,您可以设置闪存数据,其中第一个参数是键,第二个参数是其值,因此如果打印会话变量,您将使用相同名称创建键值对。 请注意,刷新页面后数据将被删除。