2010-08-26 15 views

Antwort

13

Die api docs legen das ziemlich gut hin. $form['#submit'] fügt Ihrem Formular ein Array von Übergabe-Handlern hinzu: dh wenn jemand auf die Schaltfläche "Submit" klickt, wird die Funktion im Array aufgerufen. Diese werden nach der Einreichung genannt. Wenn Sie aufrufen, um eine weitere Übergabefunktion zu einem Formular hinzuzufügen, das Sie nicht selbst erstellt haben, möchten Sie diese Eigenschaft im Allgemeinen verwenden. Wenn Sie das Formular selbst im Code erstellen, erstellen Sie auch die Standardübergabe Handler. Here sind die FAPI-Dokumente auf #submit.

$form['#after_build'] ist ähnlich, da es eine Reihe von Funktionen zum Aufruf benötigt, aber sie werden aufgerufen, nachdem das Formular für die Anzeige erstellt wurde. Dies kann verwendet werden, wenn Sie einen Standardwert oder einen vorhandenen Wert in einem Formularelement haben und den Status von etwas mit diesem Wert vor dem Senden überprüfen möchten. Ein gutes Beispiel für die Überprüfung des Status von etwas vor der Übermittlung finden Sie in der Dokumentation , nachdem das Formular zur Anzeige erstellt wurde.

Also zusammenfassend $form['#submit'] Funktionen werden bei der Einreichung aufgerufen, und $form['#after_build'] Funktionen werden bei der Anzeige des Formulars aufgerufen werden.