我有一个在 HMVC 方法中使用 CodeIgniter 的 PHP 项目。
现在,我遇到了一个问题,我真的很困惑下一步该做什么。这是我的情况:
我有一个看起来像这样的视图:
//logs_v_month.php
<div id="logs" class="tab-pane active">
</div>
<script type="text/javascript">
$(function(){
$.ajax({
url: "<?php echo load_global_assets('system/js/log.js')?>",
dataType: "script",
success: function(e){}
});
});
</script>
然后我有一个控制器:
//view.php
function display_logs_month(){
$data['logs_v'] = $this->load->view('logs_v_month');
echo json_encode($data);
}
然后我有另一个视图,即主视图。
//logs.php
<div class="tab-content" id="logs_content">
<!--logs loaded via ajax call-->
</div>
<script type="text/javascript">
function view_month(group_id, start_end){
$.ajax({
type : "POST",
dataType: "json",
url : "<?=base_url()?>logs/view/display_logs_month",
data : {"group_id" : group_id},
success : function (data){
$("div#logs").remove();
$("#logs_content").append(data.logs_v);//logs_v
},
error : function(data){
console.log(data);
}
});
}
logs.php 视图有一个通过 view.php 控制器加载 logs_v_month.php 视图的 ajax 调用。
我的问题是,如何从 logs.php 视图中的 logs_v_month.php 访问 JavaScript 函数(也通过 ajax 加载)?
我尝试在网上搜索答案,人们给出的大多数答案都是使用 eval() 函数,但许多人不鼓励使用它。
有没有办法可以重组或重新排列我的 JavaScript,以便在这种情况下轻松访问它们?如果这可以解决问题,我也会考虑命名空间。
我刚开始学习 CI 和 HMVC,所以我对此很陌生。
谢谢!