2012-06-09 138 views
1

我想要做一個簡單的表單來添加一個名稱和顏色的活動。symfony2自定義表單選擇選項

所以我想打一個清單,一些顏色的陣列,現在它正在我有顏色的名字,但我要的是做一樣的東西:

<select id="a" name="select" style="width: 10%;"> 
    <option style="background-color: FF0;" value="FF0"></option> 
    <option style="background-color: F0F;" value="F0F"></option> 
    <option style="background-color: 0FF;" value="0FF"></option> 
</select> 

哪有我添加「style =」background-color:「mycolor;」我的表單?

public function buildForm(FormBuilder $builder, array $options) 
{   
    $builder->add('name');   
    $listColor; 

    for($r = 0;$r < 255; $r = $r + 120) 
    { 
     for($g = 0;$g < 255; $g = $g + 120) 
     {  
      for($b = 0;$b < 255; $b = $b + 120)   
      { 
       $string = dechex($r).dechex($g).dechex($b); 
       $listColor[$string] = $string; 
      } 
     } 
    } 
    $builder->add('color', 'choice', array(
     'choices' => $listColor)); 
} 

是否有一個技巧有一些選項int數組?把一些HTML?

,我發現它最接近的事了,你的表格後,它做在CSS的東西上添加類名...

{{ form_widget(form, { 'attr': {'class': 'myclass'}}) }} 

感謝名單;)

RAFF

回答

0

你可以用jquery來解決這個問題,試試這個例子:

JSBIN "style="background-color:"mycolor;"

$(document).ready(function(){ 
    $("#a option").each(function(index,value){ 
     var option = $(this); 
     var bc= 'background-color:'+option.val()+';'; 
     option.attr('style',bc); 
    }); 
}); 
+0

謝謝!它完美的作品! – RaFF