sfWidgetFormSelectRadioでULにしない

sfWidgetFormSelectRadioをテンプレート内でrender()するとULタグになる。これを止めたい場合、以下のようにformatterを指定する。

 class PrivateTeamForm extends BasePrivateTeamForm
 {
     public function configure() {
         $this->widgetSchema['sex'] = new sfWidgetFormSelectRadio(array(
             'choices'   => array(1 => '男性', 2 => '女性'),
              'formatter' => array($this, 'radioFormatterCallback')
              ));
     }
 
     public function radioFormatterCallback($widget, $inputs)
     {
         $rows = array();
         foreach ($inputs as $input) {
             $rows[] =  $widget->renderContentTag('span', $input['input'] . ' ' . $input['label']);
         }
         return !$rows ? '' : implode('<br />', $rows);
     }
 }
 

参考

http://stackoverflow.com/questions/3291373/how-to-display-a-sfwidgetformselectradio-item-without-showing-the-label


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2011-08-09 (火) 19:18:37