Zend 的文档对此并不十分清楚。
问题是,默认情况下,Zend 会在每个 Controller 操作结束时自动呈现一个 View 。如果您正在使用布局 - 为什么不呢? - 它也呈现。这对于普通 Web 页面来说很好,但是当您发送 AJAX 响应时,您不想要所有这些。您如何防止 Zend 在逐个操作的基础上自动呈现?
请您参考如下方法:
从将要发送 AJAX 响应的任何操作中调用此代码:
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(TRUE);
这将禁用该操作的布局引擎,并关闭该操作的自动 View 渲染。然后,您可以“回显”您希望 AJAX 输出的任何内容,而不必担心正常的 View /布局内容会被发送出去。




