2014-09-10 64 views
0

我一直在努力獲得默認顏色選擇器的工作。當我在表單頁面上添加一個新的顏色字段(new \ Ip \ Form \ Field \ Color),然後從下拉菜單中選擇顏色後,我得到錯誤「不正確的顏色代碼」。當我檢查返回的值是這樣的「hsv(0,25%,34%)」。impresspages顏色選擇器不正確的顏色代碼

核心文件,顏色表單字段文件檢查後,我發現下面的函數驗證它。

public function validate($values, $valueKey, $environment) 
{ 
    if (preg_match('/^#([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$\b/', $values[$valueKey])) { 
     return parent::validate($values, $valueKey, $environment); 
    } else { 
     if ($environment == \Ip\Form::ENVIRONMENT_ADMIN) { 
      return __('Incorrect color code', 'Ip-admin', false); 
     } else { 
      return __('Incorrect color code', 'Ip', false); 
     } 
    } 
} 

你能請讓我知道它爲什麼產生HSV代碼顏色 「HSV(0,25%,34%),」

在此先感謝。

+0

在做這個現在 – 2014-09-11 06:59:09

回答

0

問題在於該字段的當前值。如果JavaScript無法理解這個值,它就會迴歸到HSV。將默認(或當前)值設置爲RGB。例如。 #FFFFFF。這將解決現在的問題。我會盡力做一些事情來解決這個問題。

+0

感謝您的答覆!如何以及在哪裏可以設置默認值? – 2014-09-12 07:48:32

+0

這取決於你在哪裏以及如何使用它。它是網格嗎?如果這是網格,如果有任何不正確的值,請查看數據庫中的現有值。您也可以爲GRID中的顏色字段設置'defaultValue'設置。 如果這是標準格式,請使用默認值添加'value'屬性。 – 2014-09-13 11:11:25