在你不想的佈局嘗試訪問量:
$this->_helper->layout->disableLayout();
這可以防止佈局被顯示。
如果由於某種原因,你想從同一個控制器相同的動作稱爲很多次,但一次加載佈局(必須有更好的方式來組織自己),但你總是可以嘗試:
public function indexAction()
{
static $firstTime = true;
if($firstTime){
$firstTime = false;
} else {
$this->_helper->layout->disableLayout(); //disable layout
}
}
我會試着舉一個更好的例子: 可以說你有一個控制器foo有3個視圖:索引,聯繫人,新聞。
class Foo_Controller extends Zend_Controller
{
//...
public function indexAction()
{
//normal view layout loads
}
public function contactAction()
{
//normal view layout loads
}
public function newsAction()
{
//no layout for this
$this->_helper->layout->disableLayout(); //disable layout
}
}
所以需要佈局的視圖有一個。那些不是沒有的。除非你在說佈局,而是真的想着別的東西,那麼Zend_View_Helpers_Layout你將不會發布一些代碼來幫助我們幫助你!
難道你不能只用另一個動作? – Vyktor 2012-02-07 15:45:20
那麼你想通過AJAX加載HTML並將其放入你的佈局?或者你想要什麼?這很不清楚。 – bububaba 2012-02-07 15:48:30
好,讓我幫忙。我需要將一個大的JSON對象緩存在一個頁面上,該頁面上有一個iframe。所有其他頁面都需要訪問這些數據,所以我需要將它們加載到iframe中,並且一旦登錄就不會刷新主頁面。 – 2012-03-13 03:07:18