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 に簡単にアクセスできるように、JavaScript を再構築または再配置する方法はありますか? これが問題を解決できる場合は、名前空間も考慮しています。
CIとHMVCの学習を始めたばかりなので、これにはかなり慣れていません。
ありがとう!