2016-07-20 12 views
2

Ich habe ein einfaches Problem. Ich will nur eine Checkbox-Widget mit symfony erstellen, so:Kontrollkästchen erstellen mit anpassen Label in Symfony

$builder->add("terms", CheckboxType::class, array('label'=>false)); 

Aber ich erhalten diese Ausgabe:

<div class="checkbox"> 
    <label for="fos_user_registration_form_terms" class="required"> 
     <input id="fos_user_registration_form_terms" name="fos_user_registration_form[terms]" required="required" class=" checkbox" value="1" type="checkbox"> 
         Terms 
    </label> 
</div> 

Ich möchte Text des Labels ändern, aber wenn das Label Ausprägungs in PHP überschreiben, ist der Ausgang :

<div class="checkbox"> 
    <label for="fos_user_registration_form_terms" class="required"> 
     <div class="checkbox"> 
      <label for="fos_user_registration_form_terms" class="required required"> 
       <input id="fos_user_registration_form_terms" name="fos_user_registration_form[terms]" required="required" class=" checkbox" value="1" type="checkbox"> 
         test 
      </label> 
     </div> 
     test 
    </label> 
</div> 

Ich habe zwei Label.

Ich werde erhalten möchten:

<div class="checkbox"> 
<label for="fos_user_registration_form_terms" class="required"> 
    <input id="fos_user_registration_form_terms" name="fos_user_registration_form[terms]" required="required" class=" checkbox" value="1" type="checkbox"> 
       My label for accept terms with <a> tag 

</label> 

Ich benutze diese bundle (BraincraftedBootstrapBundle)

Dank für Ihre Hilfe danken.

+0

Sie müssen Formularvorlage ändern http://symfony.com/doc/current/cookbook/form/form_customization.html –

+0

@dragoste Sie schlagen mich dazu! : D –

+0

Auch http://symfony.com/doc/current/cookbook/form/form_customization.html – pavlovich

Antwort

1

Form wie diese Render:

<div class="checkbox"> 
<label for="fos_user_registration_form_terms" class="required"> 
    {{form_widget(form.terms)}} 
    My label for accept terms with 
    <a> tag </a> 

</label> 
</div> 

Gerade Form Widget machen und Etikett von Hand erstellen.

+0

Hallo, danke für deine Antwort, ich werde versuchen – Oneill

+1

Es ist OK, aber die Dokumentation von Symfony sagen: "Wenn Sie die Bootstrap-Formular Themen verwenden und rendern Die Felder manuell, das Aufrufen von form_label() für ein Kontrollkästchen/Radio-Feld zeigt nichts. Aufgrund von Bootstrap-Interna wird das Label bereits von form_widget() angezeigt. " – Oneill

Verwandte Themen