我在哪里可以获得可用事件的详尽列表<a4j:ajax event="..." />
?
RichFaces 的文档说“JavaScript 事件属性的名称(单击、更改等)”,但我正在寻找这个“等”。;)
旁注:我注意到它确实指的是自 AFAIK 以来的JavaScript 事件名称,您必须使用selectitem
而不是select
...
我在哪里可以获得可用事件的详尽列表<a4j:ajax event="..." />
?
RichFaces 的文档说“JavaScript 事件属性的名称(单击、更改等)”,但我正在寻找这个“等”。;)
旁注:我注意到它确实指的是自 AFAIK 以来的JavaScript 事件名称,您必须使用selectitem
而不是select
...
要背诵有关该主题的RichFaces 组件参考(重点是我的):
该
<a4j:ajax>
行为允许将 Ajax 功能添加到非 Ajax 组件。非 Ajax 组件必须为所有支持行为呈现的事件属性实现 ClientBehaviorHolder 接口。
要更进一步,应该研究ClientBehaviorHolder
接口,尤其是ClientBehaviorHolder#getEventNames()
方法
返回一个非空、不可修改的集合,其中包含实现此接口的组件所支持的逻辑事件的名称
这样就不会太难找出组件可以触发的事件列表。
基本上,正如您所怀疑的,所有基本的 JavaScript 事件都受支持,并且(通常)在组件文档中提到的一组自定义事件(带有on
前缀的那些),但省略了前缀(就像onlistshow
会变成event="listshow"
)。
此外,值得一提的是,JSF 中还有两种额外的“标准”事件类型,它们将根据所讨论的组件呈现必要/正确的 HTML DOM 事件。这些action
适用于实现ActionSource
接口valueChange
的组件和实现EditableValueHolder
.
可用事件列表取决于您正在使用的组件。应该支持所有鼠标、键盘和表单事件(不确定 onerror 等),如果您正在使用,例如,<rich:select>
您可以访问文档中描述的自定义事件,如 、listclick
等。listdblclick
selectitem