我是codeigniter的新手,并使用codeigniter和bootstrap开发项目。 我有一个名为Welcome.php&的主控制器。此控制器的相应视图是user_view.php。 user_view.php基本上包含三个部分leftbar,header&身体。我可以传递除身体以外的每个部分的数据。因为它包含更多部分,这取决于左栏菜单项单击。我成功通过最初传递每个部分的视图来加载user_view.php。但是当单击左侧栏菜单项时,它会调用名为Invoice.php的新控制器,相应的视图文件是user_view,其中包含三个主体部分选项卡。现在我很困惑如何为标签加载数据。 我的流程是这样的 -
In User.php (Main Controller)
function index(){
$data = array(
'nav' =>$this->load->view('nav_view','',true),
'sidebar' =>$this->load->view('sidebar_view','',true),
'content' =>$this->load->view('content_view','',true)
);
$this->load->view('user_view',$data);
}
在user_view.php(主控制器视图)正文部分
<?php echo $nav;?>
<div id="wrapper">
<!-- #sidebar-wrapper -->
<?php echo $sidebar;?>
<!-- /#sidebar-wrapper -->
<!-- Page Content -->
<?php echo $content;?>
<!-- /#page-content-wrapper -->
</div>
从侧栏包含许多链接并点击一个链接我正在调用另一个名为Invoice.php的控制器并且需要支付功能 而Invoice.php看起来像这样
public function taxable()
{
$data = array(
'nav' =>$this->load->view('nav_view','',true),
'sidebar' =>$this->load->view('sidebar_view','',true),
'content' =>$this->load->view('invoice_taxable_view','',true),
);
$this->load->view('user_view',$data);
}
invoice_taxable_view.php
<!-- Page Content -->
<ul class="nav nav-tabs" id="myTab">
<li class="active"><a data-toggle="pill" href="#home">New Invoice</a></li>
<li><a data-toggle="pill" href="#menu1">Invoice Data</a></li>
<li><a data-toggle="pill" href="#menu2">Edit Invoice</a></li>
</ul>
<div class="tab-content">
<div id="home" class="tab-pane fade in active">
<p><?php $this->load->view('taxable_invoice_form',true); ?></p>
</div>
<div id="menu1" class="tab-pane fade">
<p><?php $this->load->view('taxable_invoice_record',true); ?></p>
</div>
<div id="menu2" class="tab-pane fade">
<h3>EDIT INVOICE</h3>
<p>Some content in menu 2.</p>
</div>
</div>
现在,内容部分包含三个带表单的标签。那么如何将所有三个标签内容传递给主视图。或者我也必须单独查看它。我还可以直接加载taxable_invoice_record.php的内容。因为它的数据来自数据库。我应该选择ajax调用,但它破坏了MVC模式。 请帮帮我。我没有任何办法,并尝试了许多可能的方式。
答案 0 :(得分:0)
我已经解决了。最初我试图做的是每次为每个控制器加载主视图。并且主视图的身体部位每次都在变化。因此,我很难通过每个控制器的身体内容。我只是放弃了保持相同的maain视图并以不同方式加载正文内容的想法。相反,我创建了单独的视图,并添加了标题siderbar正文,就像我为主控制器做的那样。但感谢所有和那些为主堆栈溢出做出艰苦努力的人。