2010-02-23 50 views
1

我可以像这样的元素添加到表单:Zend_Form的前置元

$form->addElement($element); 

然而,这将使该元素在表格最后,我想前面加上一个元素(把它放在表格的开头)。

为什么?该表格包含动态生成的字段(文本框的数量和它们的标签是基于来自请求参数生成),以便窗体类看起来是这样的:

class Form1 extends Zend_Form 
{ 

    public function init() 
    { 
     $this->setMethod('post'); 

     $submit = new Zend_Form_Element_Submit('submit1', array(
      'label' => 'Submit', 
      'class' => 'input-submit' 
     )); 

     $this->addElements(array(
      $submit 
     )); 
    } 
} 

,唯一的提交按钮,因为我不知道怎么样许多文本字段和将会有什么标签。

回答

4

ZF manual on Zend_Form Metadata and Attributes

Zend_Form_Element处理广泛的属性和元素的元数据。基本属性包括:

因此,您可以将按钮设置为非常高的数字,例如, 1000,然后添加以订单号1开头的动态元素(或者低于按钮订单号的任何数字)。

但是,除了表单中的按钮之外什么都没有,那么为什么不在动态创建整个表单并在完成附加请求中的元素后附加提交按钮。