Ajax在Zend MVC中调用

时间:2010-12-21 16:17:19

标签: ajax model-view-controller zend-framework

我是Zend Framework的新手,也是MVC的概念。我想要做的是发出一个Ajax请求,它返回我在视图(.phtml)文件中指定的数据。

我现在遇到的问题是我的.phtml文件的内容被夹在html页脚和标题之间(正在返回一个新的HTML页面)。获取原始数据的最佳方法是什么?解决方案或只是在正确的方向轻推将是非常感谢!

编辑:经过进一步的研究,看起来我正在尝试进行RPC调用,根据本讲座PDF(幻灯片51),我应该为此目的完全绕过MVC。这是对的吗?

2 个答案:

答案 0 :(得分:3)

Heximal的答案是一个很好的起点。更简单(并且这是一种很好的方式,但很简单)将类似于以下操作:

function ajaxDataAction(){
    $data = getMyDataAsString(); //could be XML, JSON, etc.  
    die($data); //since we're dying, no view or layout rendering happens.
}

但不要这样做。

相反,请查看ContextSwitch and AjaxContent view helpers(部分约占页面下方的25%)

答案 1 :(得分:0)

在你的ActionController中

试试这个:

$this->_helper->viewRenderer->setNoRender();
$this->_helper->layout()->disableLayout();
$this->renderScript('myview/myview.phtml');

其中myview是视图的路径./application/views/scripts/myview