当有人改变h:selectOneMenu中的值时,我遇到了麻烦,试图得到一个确认框,如果这个人接受,那么这个值就会改变,否则它会回到原来的值。
我不知道如何做到这一点,我做了一些研究,但我发现的大多数答案都是针对PrimeFaces的(我不使用)。
下面是与selectOneMenu相关的部分代码:
<ui:repeat value="#{CommandeBean.choixMetaProprietes}" var="choixMetaProprietes">
<h:selectOneMenu value="#{choixMetaProprietes.metaProprieteSelectionnee}">
<f:selectItems noSelectionValue="#{CommandeBean.retrieveDefaultMetaProprietesValue()}" value="#{choixMetaProprietes.metaProprietes}" var="metaPropriete" itemLabel="#{metaProprieteConverter.getMetaProprieteLabel(metaPropriete)}" itemValue="#{metaPropriete}"/>
<f:converter converterId="com.festo.didactic.ca.webapp.entreecommandes.converter.MetaProprieteConverter"/>
</h:selectOneMenu>
</ui:repeat>
我愿意接受任何能帮助我解决这个问题的想法。
我最终通过将数据存储在一个隐藏的输入中,然后将selectOneMenu的实际值与查询中的输入进行比较来做到这一点。
然后可以通过confirm('blabla bla')
调用确认框。然后,结果将告诉我是需要保留该值还是放置前一个值。