我想从具有 2 列 id 和 name 的表“accountgroups”中填充一个下拉列表。首次加载时,下拉列表的第一行应为空白或“--选择帐户组--”。一旦用户选择了项目(即显示字段“名称”和值字段“id”),我想在提交表单时获取 id 和名称值。
问问题
185 次
2 回答
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()) ;
麦克
于 2014-05-08T14:31:36.503 回答
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 回答