Zend表单元素标签“for”属性

时间:2011-02-07 20:00:44

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

我将Zend_Form子类化为允许重复使用,正如我在my other SO question中描述的那样。除了我发现的一个问题之外,它工作得非常好。在我的视图脚本中,我使用此代码来呈现字段的标签:

echo $this->formLabel($this->element->getFullyQualifiedName(),
        $this->element->getLabel());

呈现的标签将原始元素id作为for属性中的值,而不是新的后缀元素id。 Zend代码中是否有错误,我错过了一步或做错了什么?

1 个答案:

答案 0 :(得分:3)

我认为原因是你独立使用formLabel视图助手。因此,帮助程序不知道您为输入文本字段指定的任何属性。因此,您应该将这些属性提供给formLabel。例如,您可以执行以下操作:

echo $this->formLabel(
        $this->element->getFullyQualifiedName(),
        $this->element->getLabel(),
        $this->element->getAttribs() 
);

上面的代码应该生成与您的输入元素id匹配的for标记。否则,for标记将设置为元素名称。