我的页面上需要颜色选择器。 首先,我放置了Primefaces' colorpicker,但是当我尝试使用它时,我收到了#34; IllegalArgumentException:text / xml不是支持的mime类型"。可能这是因为我使用自己的jquery库,它没有colorpicker元素,它覆盖了Primefaces'之一。
所以,我以其他方式尝试过。我使用" jscolor"将任何输入字段转换为colorpicker的库。我得到了组件:
<h:inputText value="#{searchManagedBean.selectedColor}" class="color"/>
它完美无缺,但是当我提交表单时,支持bean的值不会更新。在支持bean中,我有这个字段的getter和setter,所以我无法弄清楚这个问题的原因是什么。
您能解决其中一个问题,或者提供其他解决方案吗? 谢谢!
答案 0 :(得分:0)
我找到了解决方案。如果我更新其他元素中的值,则支持bean中的值也会更新。所以,现在我有这样的事情:
<h:inputText value="#{searchManagedBean.selectedColor}" class="color">
<p:ajax event="change" update="outcolor"/>
</h:inputText>
<h:outputText style="display: none" id="outcolor" value="#searchManagedBean.selectedColor}"/>
对我来说,这是非常奇怪的行为。我不知道为什么会有效,但它确实有效!