Drupal 7 - Eingabeformular schreibgeschützt und Stil anwenden

8

Ich muss einen Stil und eine schreibgeschützte Eigenschaft auf ein Eingabeelement eines Drupal-Formulars anwenden. Ich habe folgendes codiert:

%Vor%

Und bei '#attributes' => array($inputAtributo => 1),

Bevor ich ein Formular erstelle, überprüfe ich, ob diese Eingabe nur gelesen werden und einen Stil anwenden soll:

%Vor%

Das funktioniert, aber ich denke, es ist nicht richtig codiert

Der HTML-Code zeigt Folgendes:

%Vor%

Wie kann ich das besser machen?

    
Daniel Diaz 19.12.2012, 11:58
quelle

4 Antworten

13

#attributes muss ein Array von Schlüssel-Wert-Paaren sein.

so sollte das Array wie

aussehen %Vor%     
mantish 19.12.2012, 12:12
quelle
7

#attributes soll nicht mit Stilen verwendet werden. Sie müssen ein Array mit Schlüssel und Werten bereitstellen, die HTML-Attribute reproduzieren. Und Klasse und CSS ist besser als Stil direkt in HTML hinzuzufügen.

%Vor%

Wenn Sie es in ein if einfügen möchten, können Sie dies tun:

%Vor%

Beachten Sie, dass das readonly-Attribut auch "readonly" als Wert hat, also xhtml-kompatibel .

Fügen Sie nun eine CSS-Regel in Ihr Stylesheet ein:

%Vor%     
Alessandro Pezzato 19.12.2012 12:11
quelle
0

Die anderen Antworten sind korrekt. Anstatt readonly zu verwenden, würde ich lieber #disabled verwenden . Wenn das Formularfeld schreibgeschützt oder deaktiviert ist, ist #required ebenfalls nicht erforderlich, da die Benutzer den Wert nicht ändern können.

%Vor%

Anstatt ein Textfeld zu verwenden, würde ich lieber ein Markup Formularfeld, wenn der Wert nur angezeigt und nicht bearbeitet werden soll.

%Vor%     
kiamlaluno 19.12.2012 12:43
quelle
0

Um unser Eingabefeld schreibgeschützt in Drupal-Form zu machen, setzen Sie den Wert TRUE auf readonly .

Zum Beispiel

%Vor%     
Srinivasan.S 01.10.2013 14:48
quelle

Tags und Links