2016-08-10 3 views
1

Ich habe ein neues Thema, für das ich meine Dekorateure bearbeiten muss.Zend Form Decorators für Thema

Das meiste davon habe ich funktioniert, außer für die Checkbox und das Radio.

<!-- Previously --> 
<div class="form-group "> 
    <label for="mobileTheme" class="col-lg-2 control-label optional">Mobiel thema</label> 
    <div class="col-lg-5"> 
     <div class="checkbox"> 
      <input type="hidden" name="mobileTheme" value="0" /> 
      <input type="checkbox" name="mobileTheme" id="mobileTheme" value="1" class=" " /> 
     </div> 
     <span class="help-block">Redirect mobiele gebruikers naar een eigen domein met eigen thema</span> 
    </div> 
</div> 

<!-- After --> 
<div class="form-group"> 
    <div class="col-sm-offset-2 col-sm-10"> 
     <div class="checkbox"> 
      <label> 
       <input type="checkbox" value=""> 
       <i class="input-helper"></i> 
       Remember me 
      </label> 
     </div> 
    </div> 
</div> 

Mein Dekorateur sieht wie folgt nun:

'checkbox' => array(
      'decorators' => array(
       'ViewHelper', 
       array(array('input' => 'HtmlTag'), array('tag' => 'div', 'class' => 'checkbox')), 
       array('Errors', array('class' => 'help-inline')), 
       array('Description', array('tag' => 'span', 'class' => 'help-block')), 
       array('Label', array('class' => 'col-lg-2 control-label')), 
       array('HtmlTag', array('tag' => 'div', 'class' => 'col-lg-5')), 
       'ElementWrapper' 
      ), 
      'options' => array(
       'class' => '', 
      ), 
     ), 

Das Problem, das ich mit zu kämpfen habe, ist, dass ich weiß nicht, wie die Dekorateure direkt zu bestellen, so dass Label jetzt innerhalb der col-*-* Klasse

Antwort

0

ich habe es funktioniert,

'checkbox' => array(
      'decorators' => array(
       'ViewHelper', 
       array('AdditionalElement', array('placement' => 'APPEND', 'tag' => 'i', 'class' => 'input-helper')), 
       array(array('input' => 'HtmlTag'), array('tag' => 'div', 'class' => 'checkbox')), 
       array('Errors', array('class' => 'help-inline')), 
       array('Description', array('tag' => 'span', 'class' => 'help-block')), 
       array('HtmlTag', array('tag' => 'div', 'class' => 'col-lg-5')), 
       array('Label', array('class' => 'col-lg-2 control-label')), 
       'ElementWrapper' 
      ), 
      'options' => array(
       'class' => '', 
      ), 
     ), 

AdditionalElement ist meine eigene cus Tom-Klasse für die Umsetzung von jedem Stück HTML.