【问题标题】:ColorPicker on jsf pagejsf页面上的颜色选择器
【发布时间】:2012-06-15 09:10:29
【问题描述】:

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

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

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

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

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

【问题讨论】:

    标签: java jsf primefaces


    【解决方案1】:

    我找到了解决方案。如果我更新其他元素中的值,那么支持 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}"/>
    

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

    【讨论】:

    • 不要包含 jquery,因为它已经包含在 PrimeFaces 中。这可能是这个问题的原因。
    • 我正在 Liferay 门户上开发 portlet。因此,jquery 在门户主题中用于某些主题元素,并且默认包含在所有 portlet 中。我不能影响这个。但我认为这也是问题的根源。
    猜你喜欢
    • 2019-12-15
    • 2013-09-24
    • 1970-01-01
    • 2022-12-01
    • 2016-02-16
    • 2013-04-10
    • 2012-02-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多