2012-11-15 17 views
1

我使用笨與Zurb基金會framewrk。我是試着用AJAX ..訣竅是,我不是隻加載內部HTML內容的顯示框(花式彈出)加載數據,但HTML itself..I的意思是,我想在控制器的函數返回PHP文件到阿賈克斯調用的函數,其內容將顯示在彈出..我的代碼是如何呼應頁面(視圖)阿賈克斯功能的笨

的Ajax函數調用

function ajaxfunct() { 
      $.ajax({ 
       type: "POST", 
       url: "welcome/test", 
       data: { name: "Jigar", location: "jain" } 
      }).done(function(html) { 
       $("#tagUser").append(html); 


      }); 
     } 

我的控制器代碼是

public function test() { 
    $data['name'] = $_POST['name']; 
    $data['location'] = $_POST['location']; 
    $this->load->view('index', $data); 
    echo 'WHAT SHUD I ECHO HERE ?' 
} 

我所知道的最後兩行的我控制器代碼是錯誤的..我只是不知道如何從視圖文件夾中獲取一個php文件,proces並將其作爲預處理的html(字符串)傳遞給ajax。

我不是在尋找整個code..just一些功能或在線教程參考將是偉大的.. 感謝名單

+0

檢查您的開發者控制檯(IE螢火蟲,Chrome檢查),看看你的要求會得到什麼,請在HTML – Geert

回答

2

你已經做取一個PHP文件從你的觀點在你的控制器文件夾。

$this->load->view('index', $data); 

荷載的/application/views/index.php文件,並使用從$數據陣列數據進行處理。

所以對你的Ajax調用,你可以做出不同的視圖文件比類似的index.php的test.php包含用於AJAX適當的HTML,並與線

$this->load->view('test', $data); 

調用它,並跳過部分ECHO ...

+0

調試,但會在browser..i加載整個test.php的文件要僅在彈出框中加載它,而不用重新加載當前頁面 –

+0

@Jigar。當然沒有,只有你的AJAX需要控制器功能。我認爲那是test()方法? – jtheman

+0

@Jigar如果你從你的AJAX功能,那麼結果將被放置在你的#tagUser容器中調用的歡迎/測試「。如果您在瀏覽器中編寫yourdomain.com/welcome/test,則在瀏覽器中將輸出相同的方法,但是您應該編寫AJAX控制器/模型,以便在沒有正確的POST數據的情況下不會輸出任何內容。 – jtheman