rich:clientId,rich:component和rich:element之间有什么区别?

4 jsf richfaces

我的意思是这三个富有面孔的论点:

#{rich:clientId('id')}
#{rich:element('id')}
#{rich:component('id')}
Run Code Online (Sandbox Code Playgroud)

例如在这些方法中调用(actionListener):

 <a4j:support event="onchange" ajaxSingle="true"
    actionListener="#{Bean.actionReset('#{rich:clientId('id')}')}"              
    oncomplete="jsFunction(this.value).text;" />
Run Code Online (Sandbox Code Playgroud)

Lau*_*ntG 5

您可以检查RichFaces 的文档以获得差异:

富人:的clientId

rich:clientId('id')函数返回与传递的组件标识符('id')相关的客户端标识符.如果未找到指定的组件标识符,则返回null.

示例:您id="myId"的页面中有一个组件.该组件不在结构的顶层.rich:clientId(id)将返回生成的组件的HTML id.这可能是这样的myForm:myPanel:myId.

富人:组件

rich:component('id')函数等同于RichFaces.$('clientId')代码.它根据传递的服务器端组件标识符('id')返回客户端对象实例.如果未找到指定的组件标识符,则返回null.该函数可用于从组件获取对象以在不使用组件的情况下调用JavaScript API函数.

此方法将返回一个JavaScript对象,您可以在其上调用一些RichFaces函数.这取决于您引用的组件.

富人:元

rich:element('id')函数是等效document.getElementById(#{rich:clientId('id')})代码的快捷方式.它根据传递的服务器端组件标识符从客户端返回元素.如果未找到指定的组件标识符,则返回null.

此方法将返回给定组件ID的HTML dom元素.