我想填充表'accountgroups'的下拉列表,其中包含2列id和name。首次加载时,第一行下拉列表应为空白或“ - 选择帐户组 - ”。一旦用户选择了项目(即显示字段'name'和值字段'id'),我想在提交表单时获取id和name值。
答案 0 :(得分: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();
}
答案 1 :(得分:0)
可能(你的帖子有一年半)你已经解决了你的问题,但我想要为这个问题贡献“我的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()) ;
麦克