2015-04-01 166 views
0

上下文:試圖在jquery ui插件(標籤和對話框)直接從javascript(由於某些要求)在primefaces應用程序中使用。primefaces jquery ui標籤

問題:在通話中獲取'未定義長度'和'未定義不是函數'錯誤。更具體地說,$(「#id」)。tabs()會拋出錯誤。

我做了什麼:在stackoverflow中搜索;在控制檯中檢查$ .fn。*和$ .ui。*。令人驚訝的是有很多UI插件可用(datepicker,droppable,可選),但對話框和選項卡似乎不見了。 $ .ui.version是1.11.3。我嘗試使用outputScript,並直接<腳本>標籤包含jquery ui,但似乎沒有包含這些插件;嘗試noConflict。

附加信息:它在某個時間點間歇性地工作..不知道是什麼導致它工作,什麼是阻止它現在工作。花了很多時間解決這個問題。

提前感謝您的時間,如有需要,我們會放棄其他信息。

+0

PrimeFaces包含自定義(子集)的jQuery的UI組件。其他人必須由您添加。並確保您從兼容版本使用它們。與PrimeFaces使用的jQuery版本兼容。 – Kukeltje 2015-04-01 14:18:54

+0

謝謝@Kukeltje,你的回答有助於理解。我已經添加了jquery-ui.js 1.11.3,它與1.6+以上版本兼容。 $ .ui.version的值爲1.11.3,它告訴我包含腳本標記的那個已經加載,但沒有導致包含標籤和對話框。有沒有一種方法可以分別包含這些插件?再次感謝。 – zrini 2015-04-01 14:35:45

+0

是的,你可以包括他們分開在正常的jquery-ui方式...(我沒有詳細的線索,對不起) – Kukeltje 2015-04-01 14:43:39

回答

1

PrimeFaces包含一個自定義(子集)的jQuery-UI組件。其他人必須由您添加。並確保您從兼容版本使用它們。與PrimeFaces使用的jQuery版本兼容。

包括他們應該做的事就像你通常會包括獨立的jQuery UI組件或jQuery的用戶界面兼容那些通過正常通過JavaScript代碼加載它們

+2

這個答案拯救了我的一天。只是爲了澄清:我下載了包含jquery.ui.tabs.js和jquery.ui.dialog.js(以及相應的css文件)的1.8.23 jquery-ui(似乎與primefaces 3.5捆綁在一起)的zip。將他們包括在項目中使所有功能都可以工作。謝謝! – zrini 2015-04-01 16:05:21

+0

不客氣 – Kukeltje 2015-04-01 16:05:50