Как использовать модификаторы, такие как Ctrl или Shift с jsf.2.x и f: ajax (xmlns: f = "http://java.sun.com/jsf/core" )?
Код, который у меня есть,
<h:graphicImage width="400" id="img02" style="background:blue;vertical-align:top"
value="images/img?r=1#{Math.random()}" alt="not found">
<f:ajax event="click" render="@this" listener="#{mBean.handleEvent}" />
</h:graphicImage>
и в bean
public void handleEvent(AjaxBehaviorEvent event) {
System.out.println("Debug event=" + event.toString());
System.out.println(event.getComponent().getClientId());
}
Но я понятия не имею, как у меня может быть другое поведение в ctrl-click и просто щелкнуть. Возможно ли это вообще, и если, как это можно сделать?
EDIT2: теперь у меня есть рабочая версия, которая вызывает установщика и слушателя:
<h:form id="vvv" class="small">
<h:graphicImage width="500" id="img2c"
onclick="document.getElementById('#{ckeyX.clientId}').value=event.ctrlKey"
value="images/img?y=#{Math.random()}">
<f:ajax event="click" execute="@this ckeyX"
listener="#{mBean.handleEvent}" render="@this">
</f:ajax>
</h:graphicImage>
<h:inputHidden id="ckeyX" binding="#{ckeyX}" value="#{mBean.keyX}" />
</h:form>
Должно быть, у меня было больше, чем один толстый палец на моих предыдущих попытках.