【问题标题】:zend framework: zend form decorators - remove multiply <label>zend 框架:zend 表单装饰器 - 删除乘法 <label>
【发布时间】:2011-05-20 23:57:23
【问题描述】:

我通过这段代码创建表单元素:

$input_new = $this->createElement('radio', 'Stars', array(
    'label' => 'Stars',
    'Options' => array('class'=>'star {split:2}'),
    'multiOptions'=>array(
        '1'=> '',
        '2'=> '',
        '3'=> '',
        '4'=> '',
        '5'=> '',
        '6'=> ''
  );

这是我得到的:

<label for="Stars" class="optional">Stars</label>    
<label for="Stars-1"><input type="radio" name="Stars" id="Stars-1" value="1" class="star {split:2} in_line"></label><br />
<label for="Stars-2"><input type="radio" name="Stars" id="Stars-2" value="2" class="star {split:2} in_line"></label><br />
<label for="Stars-3"><input type="radio" name="Stars" id="Stars-3" value="3" class="star {split:2} in_line"></label><br />
<label for="Stars-4"><input type="radio" name="Stars" id="Stars-4" value="4" class="star {split:2} in_line"></label><br />
<label for="Stars-5"><input type="radio" name="Stars" id="Stars-5" value="5" class="star {split:2} in_line"></label><br />
<label for="Stars-6"><input type="radio" name="Stars" id="Stars-6" value="6" class="star {split:2} in_line"></label>

我也想删除每个输入和
标签,但主标签(星星)仍然存在。我该怎么做?

【问题讨论】:

    标签: php zend-framework zend-decorators


    【解决方案1】:

    好吧,您的单选按钮可以转到显示组(字段集),因此您也可以删除按钮的所有标签并只使用组标签。如果没有,您可能需要编写一个外部装饰器视图。我想不出一种更清洁的方法来摆脱标签。

    [编辑]

    这是一个例子:

    在表单中,像这样设置装饰器:

    $input_new->setDecorators(array(array('ViewScript', array('viewScript' => 'starsview.phtml'))));
    

    然后创建一个starsview.phtml 文件。为了弄清楚如何创建视图脚本的内容,这些链接应该很有用:

    希望这会有所帮助。

    【讨论】:

    • 它对我没有帮助:(最后我只是用css规则装饰所有东西。没有更多时间;(
    • 嗯,这也是一个有效的选择:D
    猜你喜欢
    • 2011-07-13
    • 1970-01-01
    • 2011-08-08
    • 1970-01-01
    • 1970-01-01
    • 2011-03-25
    • 2011-07-09
    • 2010-11-12
    • 2011-01-10
    相关资源
    最近更新 更多