Owe*_*wen 1 zend-framework zend-form
我的复选框列表的HTML是这样的:
<dt id="list-label">
    <label for="list" class="optional">
        Choose which feeds to include in the mix
    </label>
</dt>
<dd id="list-element">
    <label for="list-1">
        <input type="checkbox" name="list[]" id="list-1" value="1">Marko Polo
    </label>
    <br />
    <label for="list-2">
        <input type="checkbox" name="list[]" id="list-2" value="2">Jeano Polo
    </label>
</dd>
我正在尝试使用selected = select来为数据库中的值为1的那些预先填充它们.我认为以下内容可行:
$form->setDefaults(array('list-1'=>1,'list-2'=>1));
但事实并非如此.有没有办法做到这一点?
编辑
Here is my form class code:
            $model = new Admin_Model_Db();
            $model->setTableName('graduates');
            $gradA = $model->getAllGraduates();
            foreach ($gradA as $grad){
                if (!empty($grad['twitter'])){
                    $twitter[$grad['id']] = $grad['firstname'] . ' ' . $grad['lastname'];
                }
            }
            $list = $this->CreateElement('multicheckbox', 'list')
                                  ->setLabel('Choose which feeds to include in the mix')
                                  ->setRequired(false)
                                  ->setMultiOptions($twitter);
试试这个:
$all_record = array('k1'=>'v1', 'k2'=>'v2');
$checked_values = aray('k1');
$checkbox = new Zend_Form_Element_MultiCheckbox('id', 
     array('multiOptions' => $all_records)
);
$checkbox->setValue($checked_values);
// ...
$this->addElement($checkbox);
$这当然是Zend_Form :)
| 归档时间: | 
 | 
| 查看次数: | 7232 次 | 
| 最近记录: |