2011-02-07 99 views
0

我的子类Zend_Form允许重复使用,如我在my other SO question中所述。除了我发现的一个问题,它工作得很好。在我看来,剧本我使用此代码呈现标签字段:Zend表单元素标签“为”属性

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

呈现的标签具有原始元素的id作为for属性,而不是新的,后缀,元素ID值。 Zend代码中是否存在错误,我错过了一个步骤或者做了什么不正确的事情?

+0

你可以展示你究竟如何以及在哪种方法(!)中实现了新的后缀ID? – singles 2011-02-07 21:33:36

+0

如果您访问我链接的其他问题,您将看到代码。我添加了一个设置后缀的函数,并且已经重写了`render()`函数。 – Sonny 2011-02-07 22:22:32

回答

3

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

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

上面的代码应该产生的输入元素ID匹配for标签。否则,for标记将被设置为元素名称。

相关问题