2012-06-15 50 views
0

我需要在我的頁面上使用顏色選擇器。 首先,我放置了Primefaces的colorpicker,但是當我嘗試使用它時,我收到了「IllegalArgumentException:text/xml不是受支持的MIME類型」。可能發生這種情況是因爲我使用我自己的jQuery庫,它沒有colorpicker元素,並且它覆蓋Primefaces的一個。jPF上的ColorPicker頁面

所以,我嘗試了其他方式。我使用「jscolor」庫將任何輸入字段變成colorpicker。我得到組件:

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

它的工作完美,但是當我提交表單時,backing bean中的值不會更新。在支持bean中,我有getter和setter這個字段,所以我無法弄清楚這個問題的原因是什麼。

你能幫助我解決這些問題嗎?或者提供另一種解決方案? 謝謝!

回答

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

對我來說,這是非常奇怪的行爲。我不知道它爲什麼會起作用,但它起作用!

+0

不包括jquery,因爲它已經包含在PrimeFaces中。這可能是這個問題的原因。 –

+0

我正在Liferay門戶上開發Portlet。所以,jquery用於某些主題元素的門戶主題,並且默認情況下包含在所有portlet中。我無法影響這一點。但我認爲這也是問題的根源。 – user1237475