ぐぐっても情報が古いんで、自分でソース読んで調べた。簡単だった。ソースはcake/libs/view/helpers/form.phpね。大体890行目近辺。
<?php if (isset($attributes['value'])) { $value = $attributes['value']; } else { $value = $this->value($fieldName); } $out = array(); foreach ($options as $optValue => $optTitle) { $optionsHere = array('value' => $optValue); if (isset($value) && $optValue == $value) { $optionsHere['checked'] = 'checked'; }
$form->radioの第3引数にvalueっていうKeyがセットされてたら、HTMLを吐く時にcheckしてやんよってことでした。
なので、
<?php $selection = array("1"=>"男性","2"=>"女性"); echo $form->radio("user.sex",$selection,array("legend"=>false,"separator"=>' ','value' => '1')); ?>
これでおk。男性がチェックされて初期表示される。
イベント関係は全部第3引数のarrayに渡せばおk。"onclick"=>"showXXXX()"とかで。