2010-09-03 27 views
0

我想爲項目使用ZendX_jQuery和Datatables。在我的佈局文件,我有:如何使用ZendX_jQuery使用DataTables jQuery對象

if($this->jQuery()->isEnabled()){ 
    $this->jQuery()->setLocalPath('/js/jquery/js/jquery-1.4.2.min.js') 
    ->setUiLocalPath('/js/jquery/js/jquery-ui-1.8.4.custom.min.js') 
    ->addStylesheet('/css/smoothness/custom.css') 
    ->addJavascriptFile('/js/jquery.dataTables.js'); 
    echo $this->jQuery(); 
    } 

每當我有對象被渲染使用該ZendX幫手,在數據表對象呈現罰款。但是,如果我沒有對象,則表格不會呈現。

例子:

數據表,因爲日期選擇器的工作:

<link rel="stylesheet" href="/css/smoothness/custom.css" type="text/css" media="screen" /> 
<script type="text/javascript" src="/js/jquery/js/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="/js/jquery/js/jquery-ui-1.8.4.custom.min.js"></script> 
<script type="text/javascript" src="/js/jquery.dataTables.js"></script> 

數據表打破,因爲沒有日期選擇器:

<link rel="stylesheet" href="/css/smoothness/custom.css" type="text/css" media="screen" /> 
<script type="text/javascript" src="/js/jquery/js/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="/js/jquery.dataTables.js"></script> 

這裏的一個明顯區別是,如果沒有其他的jQuery對象,ZendX贏得」把jQuery UI文件放在頭文件中。有沒有辦法強制它這樣做?我不喜歡必須聲明UI腳本文件兩次,以確保每個頁面都可以得到它。

感謝,

喬·奇

回答

0

你必須自己實現它,這是否則內部完成。

要訪問javascript,我們必須利用 利用jQuery()功能。 兩個助手已經激活了 依賴關係是他們稱爲 的jQuery() - >啓用()的jQuery() - > uiEnable() [...]

Source

這是指jQuery的視圖助手,所以它在控制器動作中爲$this->view->jQuery()->enable(),或在視圖中爲$this->jQuery()->enable()

+0

謝謝Chelmertz – JoeChin 2010-09-23 20:29:26