【发布时间】:2015-04-01 23:51:23
【问题描述】:
上下文:尝试直接从 javascript 中在 primefaces 应用程序中使用 jquery ui 插件(选项卡和对话框)(由于某种要求)。
问题:调用时出现“长度未定义”和“未定义不是函数”错误。更具体地说, $("#id").tabs() 正在抛出错误。
我做了什么:在 stackoverflow 中搜索;在控制台中检查了 $.fn.* 和 $.ui.* ;令人惊讶的是,有很多 ui 插件可用(datepicker、droppable、selectable),但似乎缺少对话框和选项卡。 $.ui.version 是 1.11.3。我尝试使用 outputScript 并直接使用
其他信息:它在某些时候间歇性地工作。不知道是什么导致它工作,是什么阻止它现在工作。花了很多时间解决这个问题。
提前感谢您的宝贵时间,如果需要,我们会提供更多信息。
【问题讨论】:
-
PrimeFaces 包含 jQuery-UI 组件的自定义(子集)。其他的必须由你添加。并确保从兼容版本中使用它们。兼容 PrimeFaces 使用的 jQuery 版本。
-
谢谢@Kukeltje,您的回答有助于理解。我已经添加了 jquery-ui.js 1.11.3,它与 1.6+ 及更高版本兼容。 $.ui.version 的值为 1.11.3,它告诉我包含在脚本标记中的那个已经加载,但没有导致包含选项卡和对话框。有没有办法可以单独包含这些插件?再次感谢。
-
是的,你可以用普通的jquery-ui方式分别包含它们......(我没有详细的线索,对不起)
-
再次感谢@Kukeltje,包括单独解决了问题。不知道如何接受作为评论的答案:)。
标签: javascript primefaces jquery-ui-dialog jquery-ui-tabs