我将Zend_Form
子类化为允许重复使用,正如我在my other SO question中描述的那样。除了我发现的一个问题之外,它工作得非常好。在我的视图脚本中,我使用此代码来呈现字段的标签:
echo $this->formLabel($this->element->getFullyQualifiedName(),
$this->element->getLabel());
呈现的标签将原始元素id作为for
属性中的值,而不是新的后缀元素id。 Zend代码中是否有错误,我错过了一步或做错了什么?
答案 0 :(得分:3)
我认为原因是你独立使用formLabel
视图助手。因此,帮助程序不知道您为输入文本字段指定的任何属性。因此,您应该将这些属性提供给formLabel
。例如,您可以执行以下操作:
echo $this->formLabel(
$this->element->getFullyQualifiedName(),
$this->element->getLabel(),
$this->element->getAttribs()
);
上面的代码应该生成与您的输入元素id匹配的for
标记。否则,for
标记将设置为元素名称。