Zeigen Sie das Label vor der Eingabe mit Hilfe von formRow view helper in Zf2 an

8

In Zend Framework 2.1.4 verwende ich die Standard-Formularansicht-Helfer, um meine Formularelemente zu rendern.

Wenn ich es versuche:

%Vor%

Der Etikettentext und das Eingabeelement werden in das Etikett eingefügt:

%Vor%

Das Gleiche gilt für:

%Vor%

Allerdings, wenn ich die Beschriftung rendern und einzeln eingeben:

%Vor%

Er erzeugt den HTML-Code, den ich möchte:

%Vor%

Wie erreiche ich das Gleiche mit dem Helfer von formRow view?

    
lukabers 11.04.2013, 10:59
quelle

3 Antworten

7

Wenn ein Formularelement kein "id" -Attribut hat, wird die Beschriftung die Eingabe umbrechen:

%Vor%

Sonst:

%Vor%     
user2627106 03.08.2013, 13:20
quelle
0

Betrachte (zf2 Version 2.25 dev):

\ Zend \ Formular \ Ansicht \ Helfer \ FormRow

Wenn Sie eine ID für Ihre Formularelemente nicht bereitstellen, wird das Eingabeelement in ihr entsprechendes Label-Element.

Das zweite Argument für den Helper "formRow view" platziert den Beschriftungstext vor (vor) oder nach (anzufügen) dem Eingabeelement im Dokumentfluss. (Standardmäßig wird sie vorher eingefügt.)

Überprüfen Sie die Rendermethode für weitere Details.

    
Bill 26.10.2013 00:10
quelle
-2

Zuerst müssen Sie den Quellcode sehen, um zu verstehen, wie formRow funktioniert: Ссылка

Nachdem Sie in diesem Code gesehen haben, dass __invoke $ labelPosition-Parameter hat, die Sie vorsetzen oder anhängen können mit const LABEL_APPEND und LABEL_PREPEND.

Kurz gesagt, versuchen Sie etwas wie folgt:

%Vor%     
GoT 11.04.2013 14:41
quelle