2011-07-20 8 views
2
<form enctype="application/x-www-form-urlencoded" action="" method="post"> 
<ul> 
<div> 
<fieldset id="fieldset-groups"><legend>Endereço</legend> 

    <li> 
     <label for="name" class="optional">Name</label> 
     <input type="text" name="name" id="name" value=""> 
      <div class="errors"> 
        <p>Error</p> 
      </div> 
    </li> 

</fieldset> 

</div> 
</ul> 
</form> 

デコレータのzendを使用して、上記のコードを作成する方法を教えてください。デコレータul li zend_form

+2

あなた自身のデコレータを作ってみましたか?もしそうなら、何を試しましたか? –

+3

また、これは有効なHTMLではありません。あなたはulの直接の子としてdivを、fieldsetの子としてliを持つことはできません。あなたは少なくとも、divでラップし、別のul側にfieldsetを置く必要があります。 –

答えて

0

私はこの方法を試してみました:

$this->addDecorator('FormElements') 
     ->addDecorator('HtmlTag', array('tag' => 'ul')) 
     ->addDecorator('Form'); 
    $this->setElementDecorators(array(
            'ViewHelper', 
            'Label', 
            'Errors', 
            new Zend_Form_Decorator_HtmlTag(array('tag' => 'li')) 
           )); 
    $this->setDisplayGroupDecorators(array(
             'FormElements', 
             'Fieldset', 
             'FormErrors', 
             new Zend_Form_Decorator_HtmlTag(array('tag' => 'li')), 
            )); 

問題は、私はラベルとテキスト要素をフロートする必要があるということですので、私はリストを使用しようとしました。

これは私ができる唯一の方法でした。