2012-02-09 9 views
0

アクションごとにファイルを取得するために、一意のjavascriptファイルを分割したいと考えています。私はjQueryの()を使用して私のコントローラで - JSファイルを呼び出すために> addJavascriptFile():私は、コントローラとアクションによって、JSファイルでフォルダを持って、私のjs /パブリックフォルダでzend Framework。アクション/コントローラで指定された別のjavascriptファイルを呼び出す

class DemandesController extends Zend_Controller_Action 
{ 
    public function init() 
    { 
    $this->view->jQuery()->addJavascriptFile('public/js/' . $this->getRequest()->getControllerName() . '/' . $this->getRequest()->getActionName() . '.js'); 
    } 
} 

... それは動作しますウェルのみindexActionと、他の全ての制御装置の名前は、URIに挿入されている:indexActionと :他とhttp://192.168.78.208/demande_absence/public/js/demandes/index.jshttp://192.168.78.208/demande_absence/demandes /public/js/demandes/nouvelle.js

私が間違ったことは何ですか?

答えて

1

試してみてください。

$this->view->jQuery()->addJavascriptFile('/public/js/' . $this->getRequest()->getControllerName() . '/' . $this->getRequest()->getActionName() . '.js'); 

と私はあなたも正しいURLを構築するためにBASEURLビューヘルパーのようなものを使用しなければならないと思います。

+0

baseUrlはビューヘルパーです。どのように私はコントローラでこれを使うことができますか? – SiCK

+1

@SiCK '$ this-> view-> baseUrl ...' – JCM

+0

ありがとう!!!!最初に$ this-> view-> baseUrl()が見つかりませんでした – SiCK

0

絶対パスではない可能性があります。これを試してください:

$this->view->jQuery()->addJavascriptFile('/public/js/' . $this->getRequest()->getControllerName() . '/' . $this->getRequest()->getActionName() . '.js'); 
+0

dev-とprod servsのパスが異なるため、view-> baseUrl()を使用する方が好きです – SiCK

関連する問題