我有一个Multi SELECT List
,管理员可以为球员选择多个位置,球员可以玩
/com/models/forms/player.xml
<field name="sec_position_name" type="checkboxes" label="Secondary Pos." >
<option value="Left">Left</option>
<option value="Middle">Middle</option>
<option value="Right">Right</option>
</field>
这些是
中的函数com/models/player.php加载表单数据
protected function loadFormData() {
$data = JFactory::getApplication()->
getUserState('com_football.edit.player.data', array());
if (empty($data)) {
$data = $this->getItem();
}
return $data;
}
public function getForm($data = array(), $loadData = true) {
$form = $this->loadForm('com_football.player',
'player', array('control' => 'jform',
'load_data' => $loadData));
return $form;
}
下面是表单在布局中的显示方式。
com/views/player/tmpl/edit.php
<ul class="adminformlist">
<?php foreach ($this->form->getFieldset('optional') as $field): ?>
<li><?php echo $field->label; ?>
<?php echo $field->input; ?></li>
<?php endforeach ?>
</ul>
我如何从DB显示已经存在的值作为SELECTED…??
注意:我在这里也问过(也许这更清楚)
写入从数据库中获取已存在值的方法。假设它返回一个带值的数组。下一步是根据自定义类型创建字段,然后在循环中获取现有值并与新值进行比较