4

我正在构建一个 JSF 应用程序,并希望使用 jquery ui 按钮小部件将一个简单的 h:link 转换为看起来像一个按钮。我正在使用 JSF2 和 primefaces 3.5。

我手动添加了 jquery-ui.js 并具有以下 xhtml:

<h:link styleClass="linkGr" outcome="#{listadoUsuario.verUser(user.username)}">ver</h:link>
<script>$(".linkGr").button({icons: {primary: "ui-icon-pencil"},text: false});</script>

在页面中使用它可以正常工作,但在其他页面中,我看到以下错误:

TypeError: Object function (f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])} has no method 'extend'

我注意到这发生在 primefaces 添加 jquery-plugins.js 的页面中。

我尝试不手动包含 jquery-ui javascript,因为我看到 jquery-plugins 添加了按钮小部件,但问题是在添加 jquery-plugins(不包括 jquery-ui.js)时我看不到如何将链接转换为按钮。功能按钮在 $ 中不可用。有人可以指导我如何使用 primefaces 包含的按钮方法吗?

提前致谢!

4

1 回答 1

1

PrimeFaces 已经包含了 jQuery UI,你不应该自己捆绑它。有p:button成分。这是Primefaces Showcase上的示例。所以对于你的情况:

<p:button outcome="#{listadoUsuario.verUser(user.username)}" value="ver" icon="ui-icon-pencil"/>   

您可以使用

 <f:param name="productId" value="10" /> 

如果您的 URL 中需要 GET 参数。

另请参阅:https ://stackoverflow.com/a/18916907/2692917

于 2013-09-29T18:42:49.510 回答