簡體   English   中英

通過ajax加載codeigniter視圖

[英]load codeigniter view Via ajax

嗨,我在codeigniter中創建一個應用程序。 我的問題是我想像這樣通過ajax動態加載頁面內容:

$.ajax({
    url:'/customer/customerList',
    type: 'POST',
    dataType: 'text',
    success: function(data) {
        $('#container').empty().append(data)
    }
});

這是我的codeigniter模板的loadview函數:

function loadView($page, $data = NULL) {

    $parts = array('header', 'menu-top', 'sidebar-menu', $page, 'footer');

    foreach($parts as $part) {

        if ($part == 'header') {

            $this -> CI -> load -> view($part, $data);
        } else

        if ($part == 'menu-top') {
            $data['menu'] = $this -> loadMenu('menu-top');
            $this -> CI -> load -> view($part, $data);
        } else

        if ($part == 'sidebar-menu') {
            $data['menu'] = $this -> loadMenu('sidebar-menu');
            $data['controller_name'] = $this -> CI -> uri -> segment(1);
            $data['function_name'] = $this -> CI -> uri -> segment(3);
            $this -> CI -> load -> view($part, $data);
        } else

        if ($part == $page) {
            $this -> CI -> load -> view($part, $data);
        } else
        if ($part == 'footer') {
            $this -> CI -> load -> view($part, $data);
        }
    }
}

我將該模板用於靜態菜單(無需重新加載)。

但是當我使用ajax加載控制器/視圖時,由於此模板,它會返回所有html。 有什么解決方案嗎?

如何更改模板以始終具有靜態側邊欄菜單,並僅在應用程序的中間加載。

感謝您的重播。

您應該發送錯誤值作為第三個參數,以獲取返回數據並打印未加載HTML文件的數據。 像這樣 ::

回聲$ this-> CI-> load-> view($ part,$ data,FALSE);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM