如何在CodeIgniter中使用redirect()打开Bootstrap模式? 要么 如何在模型的视图中执行具有特定id的特定div?
我正在尝试在同一页面中成功提交表单时打开Bootstrap模式。
答案 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;
在此行中,您可以设置闪存数据,其中第一个参数是键,第二个参数是其值,因此如果打印会话变量,您将使用相同名称创建键值对。 请注意,刷新页面后数据将被删除。