[英]Exhaustive list of available events for a4j:ajax?
在哪里可以獲取<a4j:ajax event="..." />
的可用事件的詳盡列表?
RichFaces的文檔說“ JavaScript事件屬性的名稱(單擊,更改等)” ,但我正是在尋找這個“等”。 ;)
旁注:我要確保自AFAIK以來,它完全指的是JavaScript事件名稱 ,您必須使用selectitem
而不是select
...
要朗讀有關此主題的RichFaces組件參考 (重點是我的):
<a4j:ajax>
行為允許將Ajax功能添加到非Ajax組件。 非Ajax組件必須為所有支持行為渲染的事件屬性實現ClientBehaviorHolder接口 。
要繼續進行下一步,應該查看ClientBehaviorHolder
接口,尤其是ClientBehaviorHolder#getEventNames()
方法
返回一個非空,不可修改的Collection, 其中包含實現此接口的組件所支持的邏輯事件的名稱。
這樣,找出組件可以觸發的事件列表就不會太困難。
基本上,正如您所懷疑的那樣,所有基本JavaScript事件均受支持,並且一組(通常)在組件文檔中提到的自定義事件(帶有on
前綴的事件),但省略了前綴(例如onlistshow
將變成event="listshow"
) 。
另外,值得一提的是,JSF中還有兩種“標准”事件類型,它們將根據所涉及的組件來呈現必要/正確的HTML DOM事件。 這些都是action
為實現組件ActionSource
接口和valueChange
為實現組件EditableValueHolder
。
可用事件的列表取決於您正在使用的組件。 應該支持所有的Mouse,Keyboard和Form事件(不確定onerror等),如果正在處理<rich:select>
,則可以訪問自定義事件,例如listclick
, listdblclick
, selectitem
等。在文檔中進行了描述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.