2012-02-29 7 views
0

get ajaxを使ってページを取得しています。javendでJavaScriptを無効にする

$.get('/notification/viewmessage',{user:username},function(data){ 
       //my code here 
      }); 

私はいくつかの$.get呼び出しでページのレイアウトを無効にするwan't。 zendのデフォルトのレイアウト無効化機能は$this->_helper->layout->disableLayout(); ですが、私はすべてのページリクエストでこれをしたくありません。 jsリクエスト自体にいくつかのコードを追加することでこれを行うことができますか?ありがとうございます。

+1

URLに変数を追加して、そのページでその変数を確認できます。 –

答えて

1

に通常のビューの内容を配置するためにあなたは、おそらくあなたのviewmessageスクリプトにフラグを追加したいと思います。

$.get('/notification/viewmessage?layout=false',{user:username},function(data){ 
    //my code here 
}); 

次に、viewmessageスクリプトでは、スクリプトの上部にこのようなものがあります。

if($this->getRequest()->getParam('layout') == 'false') 
{ 
    $this->_helper->layout->disableLayout(); 
} 
1

これはAjaxContext action helperの意味です。

コントローラのinit()メソッドに設定呼び出しを追加して、.ajax.phtmlビューを作成し、それを通常のビュースクリプトでレンダリングします。例notification/viewmessage.phtml

public function init() 
{ 
    $this->_helper->ajaxContext->addActionContext('viewmessage', 'html') 
           ->initContext('html'); 
           // this avoids having to pass a format param 
} 

<?php echo $this->render('notification/viewmessage.ajax.phtml') ?> 

notification/viewmessage.ajax.phtml

関連する問題