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

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 (2356d)