2012-08-05 1 views
-1

젠드 프레임 워크에서 테이블 내부에서 양식을 만드는 방법에 대한 많은 자습서를 읽었지만 유감스럽게도 그 중 아무도 나를 위해 일한 적이 없으며 많은 시간을 투자 해 보았습니다. 너희들.젠드 프레임 워크에있는 테이블

public $elementDecorators = array(
     'ViewHelper', 
     'Errors', 
     array(array('data' => 'HtmlTag'), array('tag' => 'td', 'class' => 'col2')), 
     array('Label', array('tag' => 'td','class'=>'taR')), 
     array(array('row' => 'HtmlTag'), array('tag' => 'tr','class' => 'rowA')), 
); 

public function init() 
{ 

    $this->setName('message'); 

    $message_id = new Zend_Form_Element_Hidden('message_id'); 
    $message_id->addFilter('Int'); 

    $message_content = new Zend_Form_Element_Text('message_content'); 
    $message_content->setLabel('Message') 
    ->setRequired(true) 
    ->addFilter('StripTags') 
    ->addFilter('StringTrim') 
    ->addValidator('NotEmpty') 
    ->setAttrib('class', 'frmtb'); 
    $username = new Zend_Form_Element_Text('username'); 
    $username->setLabel('Name') 
    ->setRequired(true) 
    ->addFilter('StripTags') 
    ->addFilter('StringTrim') 
    ->addValidator('NotEmpty') 
    ->setAttrib('class', 'frmtb'); 

    $submit = new Zend_Form_Element_Submit('submit'); 
    $submit->setAttrib('id', 'submitbutton') 
    ->setAttrib('class', 'frmbtn'); 


    //$this->addElements(array($message_id, $username,$message_content, $submit)); 
    $this->addElement($username,'username',array('decorators' => $this->elementDecorators)); 
    $this->addElement($message_content,'message_content',array('decorators' => $this->elementDecorators)); 
    $this->addElement($submit,'submit',array('decorators' => $this->elementDecorators)); 
} 

가 내가 뭘 잘못 말해 주시겠습니까 : 이 내 코드?

답변

1

좋아,이 질문을 게시 한 직후 내 대답을 발견하게되어 다행이었습니다. This question about Zend form decorators 정말 도움이되었습니다.

내 코드는 이제 다음과 같습니다

public function init() 
{ 


    $this->setDecorators(array(
      'FormElements', 
      array('HtmlTag',array('tag'=>'table')), 
      'Form' 
    )); 

    $this->setName('message'); 

    $message_id = new Zend_Form_Element_Hidden('message_id'); 
    $message_id->addFilter('Int'); 

    $message_content = new Zend_Form_Element_Text('message_content'); 
    $message_content->setLabel('Message') 
    ->setRequired(true) 
    ->addFilter('StripTags') 
    ->addFilter('StringTrim') 
    ->addValidator('NotEmpty') 
    ->setAttrib('class', 'frmtb'); 

    $message_content->setDecorators(array(
      'ViewHelper', 
      'Errors', 
      array(array('data'=>'HtmlTag'), 
        array('tag'=>'td','class'=>'element')), 
      array('Label',array('tag'=>'td')), 
      array(array('row'=>'HtmlTag'),array('tag'=>'tr')), 

    )); 

    $username = new Zend_Form_Element_Text('username'); 
    $username->setLabel('Name') 
    ->setRequired(true) 
    ->addFilter('StripTags') 
    ->addFilter('StringTrim') 
    ->addValidator('NotEmpty') 
    ->setAttrib('class', 'frmtb'); 

    $username->setDecorators(array(
      'ViewHelper', 
      'Errors', 
      array(array('data'=>'HtmlTag'), 
        array('tag'=>'td','class'=>'element')), 
      array('Label',array('tag'=>'td')), 
      array(array('row'=>'HtmlTag'),array('tag'=>'tr')), 

    )); 

    $submit = new Zend_Form_Element_Submit('submit'); 
    $submit->setAttrib('id', 'submitbutton') 
    ->setAttrib('class', 'frmbtn'); 

    $submit->setDecorators(array(
      'ViewHelper', 
      'Errors', 
      array(array('data'=>'HtmlTag'), 
        array('tag'=>'td','class'=>'element')), 
      array('Label',array('tag'=>'td')), 
      array(array('row'=>'HtmlTag'),array('tag'=>'tr')), 

    )); 


    $this->addElements(array($message_id, $username,$message_content, $submit)); 
}