gpt4 book ai didi

checkbox - 在 Zend Form 中使用 viewScript 装饰器时填充复选框

转载 作者:行者123 更新时间:2023-12-04 06:46:06 25 4
gpt4 key购买 nike

我有一个带有复选框的 zend_form:

$horz = new Zend_Form_Element_Checkbox('horizontal');
$horz->setLabel('Display horizontally?');

$horz->setDecorators(array(array('ViewScript', array('viewScript' => 'partials/forms/checkbox.phtml'))));

我的自定义 viewScript checkbox.phtml 如下所示:
<?php 
$name = $this->element->getName();
$attrs = $this->element->getAttribs();
$options = $attrs['options'];
?>
<dt id="<?= $name ?>-element">
<input type="hidden" value="<?= $options['uncheckedValue'] ?>" name="<?= $name ?>" />
<label>
<input type="checkbox" class="checkbox" value="<?= $this->element->getValue() ?>" id="<?= $this->element->getId() ?>" name="<?= $name ?>">
<?= $this->element->getLabel(); ?>
</label>
</dt>

它呈现得很漂亮,但是当我从数据库记录填充表单时:
$record = array('horizontal'=>1);
$form->populate($record);

复选框未被选中。是否需要在我的 viewScript 中设置一些内容以允许它填充?

最佳答案

填充值后,您必须选中 html View 脚本中的框。

<input type="checkbox" class="checkbox" value="<?= $this->element->getValue() ?>" id="<?= $this->element->getId() ?>" name="<?= $name ?>" <?php echo $this->element->isChecked() ? " checked=\"checked\"" : "" ?> />

关于checkbox - 在 Zend Form 中使用 viewScript 装饰器时填充复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3746425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com