2012-11-15 22 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