HTML_QuickFormのAdvCheckBox にデフォルトでチェックを入れるには

解決済みの質問

HTML_QuickFormのAdvCheckBox にデフォルトでチェックを入れるには

HTML_QuickFormのAdvCheckBoxにデフォルトでチェックを入れたいのですが、

$form->addElement('advcheckbox', 'c1', '', 'Check1', NULL, array("f", "t"));
$form->addElement('advcheckbox', 'c2', '', 'Check2', NULL, array("f", "t"));
$form->addElement('advcheckbox', 'c3', '', 'Check3', NULL, array("f", "t"));
$form->setDefaults(array('c2'=>'checked'));

上記のようにやってみたのですが Check2 にチェックを入れることは出来ませんでした。通常のcheckboxでは下記のようにやってチェックを入れることができました。


$form->addElement('checkbox', 'c1', '', 'Check1');
$form->addElement('checkbox', 'c2', '', 'Check2');
$form->addElement('checkbox', 'c3', '', 'Check3');
$form->setDefaults(array('c2'=>'checked'));

AdvCheckboxは方法が違うのでしょうか?

投稿日時 - 2005-11-23 14:44:05

連想キーワード:

QNo.1796621

困ってます

質問者が選んだベストアンサー

どうも@寝不足です。
方法は変わりません。

$form->addElement('advcheckbox', 'c1', '', 'Check1', NULL, array("f", "t"));

デフォルト値setDefaultsの設定はaddElementの選択値と一致させなければいけません。
つまり・・・
$form->addElement(
 'advcheckbox',
 'c2',
 '',
 'Check1',
 NULL,
 array("f(チェック無しの値)", "t(チェック有りの値)")
);
と要素指定したならば
$form->setDefaults(array('c1'=>'t'));
とすることでチェック状態になります。

説明しづらくて申し訳ないです。

投稿日時 - 2005-11-25 05:57:43

お礼

ご回答ありがとうございました。
教えていただいた方法でうまくいきました。

投稿日時 - 2005-11-25 08:26:29

ANo.1

0人が「このQ&Aが役に立った」と投票しています

あわせてチェックしたい
  • HTML_QuickFormのチェックボックスについて ...
  • QuickFormのradioボタンでエラーが出る ...
  • PEAR::HTML_QuickFormのfreezeについて ...
PR
【夫婦アンケート】バレンタインしてますか?[ 詳細 ]

OKWaveのオススメ

教えて弁護士さん!

お金の悩みQ&A特集はこちら