java - 为 PrimeFaces remoteCommand 生成并使用唯一名称

标签 java jsf-2 primefaces facelets composite-component

我了解对于带有 widgetVar 的 PrimeFaces 组件属性,我可以使用 p:widgetVar('myComponentId')得到 widgetVar从组件的 ID 派生。如果 <p:remoteCommand/> 具有相同类型的功能就好了所以我可以有多个使用 <p:remoteCommand/> 的相同类型复合组件的实例.我最初尝试了 widgetVar功能,但后来意识到它不起作用。

<p:remoteCommand id="previousCycleCommand"
                 actionListener="#{cc.selectPreviousCycle()}"
                 update=":#{cc.clientId}:updateable"
                 partialSubmit="false"/>

<p:button id="previousCycleButton"
          icon="ui-icon-circle-triangle-w"
          onclick="#{p:widgetVar('previousCycleCommand')}();"/>

是否有任何 PrimeFaces 功能可用于从其完全展开的 ID 派生远程命令的名称?

最佳答案

如何使用当前客户端 ID 创建一个唯一 ID?由于每个复合组件都应该是一个唯一的命名容器,因此串联的 ID 也应该是唯一的。

<p:remoteCommand id="#{cc.clientId}_previousCycleCommand"
             actionListener="#{cc.selectPreviousCycle()}"
             update=":#{cc.clientId}:updateable"
             partialSubmit="false"/>

<p:button id="previousCycleButton"
      icon="ui-icon-circle-triangle-w"
      onclick="#{cc.clientId}_previousCycleCommand();"/>

关于java - 为 PrimeFaces remoteCommand 生成并使用唯一名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11863197/

相关文章:

java - 如何对返回 Java 字符串的方法进行单元测试?

javascript - 单击 <p :commandButton> in JSF 打开一个新窗口

jsf - PrimeFaces 对话框引用父级

java - 如何从日历中获取月份数

java - 如何在 HTTP GET 中获取 anchor 名称?

jsf-2 - 使用具有绑定(bind)和 session 作用域的数据表时,已在 View 中找到组件 ID

java - Servlet 过滤器(自动登录)优先于声明性安全检查

java - 用于 JSF、Hibernate 项目的 Tomcat 或 JBoss

jquery - 如何屏蔽 JSF 中未渲染的字段?

java - 获取和设置选定的索引 JSpinner