Zend的文档不是很清楚这一点。
问题是,默认情况下,Zend在每个控制器操作结束时自动呈现视图。如果你使用布局 – 为什么不? – 它也渲染。这对于正常的网页很好,但是当你发送一个AJAX响应,你不想要这一切。如何防止Zend在逐个操作的基础上自动呈现?
从任何Action中
调用此
代码将要发送AJAX响应:
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(TRUE);
这将禁用该操作的布局引擎,并关闭该操作的自动视图呈现。然后你可以“回显”任何你想要的AJAX输出,而不必担心正常的视图/布局的东西被送去骑。