【问题标题】:Label tag for text input element文本输入元素的标签标签
【发布时间】:2024-01-21 02:12:01
【问题描述】:

我正在像这样添加一个表单元素:

$this->addElement('text', 'product_name', array(
    'label' => 'product name',
    '... )
);

我想在 ViewScript 装饰器脚本中引用 product_name 标签,因为我正在使用 product_name 文本输入 <?php echo $this->form->product_name; ?> 但“addElement”呈现的标签标签没有“名称“ 属性。我该如何解决这个问题?

【问题讨论】:

    标签: zend-framework zend-form zend-form-element zend-decorators


    【解决方案1】:

    选项 1: 使用 Zend manual 并查看 "Rendering Individual decorators" 部分,了解如何单独呈现您的标签。

    方案二:可以跳过标签部分,如下在表单代码中去掉它的装饰器,然后在表单的视图脚本中直接添加你要添加的样式:

      $element = new Zend_Form_Element_Text('product_name');
      $element->removeDecorator('HtmlTag')
              ->removeDecorator('Label');
    

    然后,在视图脚本中:

      <span class="label"> Product Name: </span> <?php echo $this->form->product_name; ?>
    

    【讨论】: