有很多最終用戶web框架(Bootstrap就是其中之一),它們使得鏈接看起來像按鈕。但是,在頁面上進行鍵盤導航時,這兩種方式並不相同:按鈕可以按Space
推送,鏈接需要按Enter
才能激活。JSF使用Tab和Space鍵激活一個h:commandLink
鑑於h:commandLink
和h:commandButton
在功能上與服務器端相同,如何使它們在使用鍵盤導航時表現相同?這基本歸結爲如何使h:commandLink
通過點擊鏈接並按空格鍵而不用重寫.xhtml
來源來觸發相同動作的問題。
在我有限的知識中,可能的選擇是使用事件偵聽器或編寫特殊標記包裝或甚至自定義ResponseWriter
來更新樹中的每個ClientBehaviorHolder
。有任何想法嗎?
沒有嘗試過它,但是你認爲覆蓋像Prim這樣的庫的渲染器是安全的嗎?界面或類似?在這種情況下,伊莫可能會有一些內在的邏輯。 – Osw
我已經嘗試了核心JSF命令鏈接。這對我有效。如果你使用'p:commandLink',你應該可以用'p:commandButton'中的一個替換它的渲染器。雖然沒有特別嘗試過。 –