idとnameの2つの列を持つテーブル'accountgroups'のドロップダウンにデータを入力したいと思います。ドロップダウンの最初の行は、最初にロードされたときに空白または「-アカウントグループの選択-」である必要があります。ユーザーがアイテム(つまり、表示フィールド'name'と値フィールド'id')を選択したら、フォームの送信時にidとnameの値を取得したいと思います。
質問する
185 次
2 に答える
0
最初にテーブルのモデルを作成する必要があります。
class Model_AccountGroups extends Model_Table {
public $table='accountgroups';
function init(){
parent::init();
$this->addField('name');
}
}
$form->addField('dropdown','account_id')->setModel('AccountGroups');
if($form->isSubmitted()){
$form->js()->univ()->alert('Selected ID='.$form->get('account_id'))->execute();
}
于 2012-08-28T02:14:03.147 に答える
0
おそらく(あなたの投稿には1年半かかります)あなたはあなたの問題を解決しましたが、とにかくこの問題のために「私の2セント」で貢献したいと思います. 私は(ドキュメント、フォーラムなど)見回しましたが、同じ問題に対する別の解決策は見つかりませんでした。私の解決策(テスト済みで動作中)は次のとおりです(十分に効率的ではないことをお知らせください):
>>>>>>>>>>>>>>>>>>>>> ON MODEL
class Model_Offices extends Model_Table {
public $entity_code='Offices';
function init(){
parent::init();
$this->addField('ID')->ReadOnly(True);
$this->addField('OfficeName');
}
function GetAll() {
$r=array();
$AllOffices = $this->SetModel('Offices');
foreach($AllOffices as $OneOffice) {
$r[$OneOffice['ID']]=$OneOffice['OfficeName'];
}
return $r;
}
}
>>>>>>>>>>>>>>>>>>>> ON PAGE
$m=$this->Add('Model_Offices');
$form->addField('dropdown','Office')->SetValueList($m->GetAll()) ;
マック
于 2014-05-08T14:31:36.503 に答える