Posted on

CakePHP formヘルパーでselectのoptionだけに属性をつける方法

formヘルパーでselectに属性を付けるときは

  1. echo $form->input( 'Model.field'array'type' => 'select''options' => $arr'style' => 'color: #ff0000' ) );  

option部分だけ属性を付ける時にどうすれば?・・・と思ったのでメモ

ビュー側で特に何もせずoptionsの配列を作るところで

  1. // 通常  
  2. $arr = array(  
  3. '1' => 'PHP',  
  4. '2' => 'Java',  
  5. '3' => 'Ruby',  
  6. );  
  7. // optionだけに属性を付ける時  
  8. $arr = array(  
  9. array('name' => 'PHP''value' => '1''style' => 'color: #0000ff;'),  
  10. array('name' => 'Java''value' => '2''style' => 'color: #0000ff;'),  
  11. array('name' => 'Ruby''value' => '3''style' => 'color: #0000ff;'),  
  12. );  

と設定するだけでした。下のようなプルダウンが表示されます。