Какие значения я могу передать атрибуту события тега f:ajax?
Я пытаюсь найти список всех возможных значений, которые я могу передать атрибуту "событие" тега f: ajax.
Я знаю, что могу также передавать имена функций из моих файлов.js, но мне нужны только те, которые поставляются с JSF.
Я знаю только о щелчке мышью и ключе, но я уверен, что есть и другие. Просто не знаю, где их найти.
2 ответа
event
атрибут <f:ajax>
может содержать по крайней мере все поддерживаемые события DOM элемента HTML, который был сгенерирован соответствующим компонентом JSF. Самый простой способ найти их - проверить все on*
Атрибуты входного компонента JSF, представляющие интерес, в документации библиотеки тегов JSF, а затем удалите префикс "on". Например, <h:inputText>
компонент, который оказывает <input type="text">
перечисляет следующее on*
Атрибуты (из которых я уже удалил префикс "on", чтобы он в конечном итоге стал именем типа события DOM):
blur
change
click
dblclick
focus
keydown
keypress
keyup
mousedown
mousemove
mouseout
mouseover
mouseup
select
Кроме того, в JSF есть еще два специальных имени для EditableValueHolder
а также ActionSource
компонентов, реальное событие HTML DOM, которое будет отображено, зависит от типа компонента:
valueChange
(будет отображаться какchange
на тексте / выберите входы и какclick
на радио / чекбокс входах)action
(будет отображаться какclick
по командным ссылкам / кнопкам)
Вышеупомянутые два являются событиями по умолчанию для рассматриваемых компонентов.
Некоторые библиотеки компонентов JSF имеют дополнительные настраиваемые имена событий, которые обычно являются более специализированными valueChange
или же action
события, такие как PrimeFaces <p:ajax>
который поддерживает среди других tabChange
, itemSelect
, itemUnselect
, dateSelect
, page
, sort
, filter
, close
и т. д. в зависимости от родителя <p:xxx>
составная часть. Вы можете найти их все в подразделе "События поведения Ajax" главы каждого компонента в Руководстве пользователя PrimeFaces.
Я просто ввел какое-то значение, которое, как я знал, было неверным, и вот вывод
'whatToInput' не поддерживается событием для HtmlPanelGrid. Пожалуйста, укажите одно из этих поддерживаемых имен событий: click, dblclick, keydown, keypress, keyup, mousedown, mousemove, mouseout, mouseover, mouseup.
Значения, которые вы можете передать событию
- щелчок
- DblClick
- KeyDown
- MouseDown
- MouseMove
- Mouseover
- MouseUp