0

我的页面上需要颜色选择器。首先,我放置了 Primefaces 的颜色选择器,但是当我尝试使用它时,我收到“IllegalArgumentException:text/xml 不是受支持的 mime 类型”。这可能是因为我使用了自己的 jquery 库,它没有颜色选择器元素,并且它覆盖了 Primefaces 的元素。

所以,我尝试了其他方式。我使用“jscolor”库将任何输入字段转换为颜色选择器。我得到了组件:

<h:inputText value="#{searchManagedBean.selectedColor}" class="color"/>

它工作得很好,但是当我提交表单时,支持 bean 中的值不会更新。在支持 bean 中,我有这个字段的 getter 和 setter,所以我不知道这个问题的原因是什么。

您能帮我解决其中一个问题,或者提供另一种解决方案吗?谢谢!

4

1 回答 1

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}"/>

对我来说,这是非常奇怪的行为。我不知道为什么它有效,但它有效!

于 2012-06-15T09:29:35.070 回答