Joomla

ID #1376 Joomla-Entwicklung: Validation im adminForm

Problem:

Wer eine eigene Komponente schreibt, die auch im Administrations-Bereich Formulare bereit stellt, kommt evtl. mal an den Punkt, dass er die Eingaben vor dem Submit (per Klick auf "Speichern") überprüfen möchte.

Der übliche Weg per <form [...]  onsubmit="return formText();"> funktioniert bei Joomla-Admin-Formularen nicht, sobald man die Buttons oben links nutzen möchte.

Lösung:

Das Hauptproblem bildet das Joomla eigene JavaScript welches ausgeführt wird, wenn man auf den Save-Button klickt. Dabei wird zwar der Code von onsubmit ausgeführt aber der Return-Code (Boolean-Wert) unbeachtet gelassen und dennoch der Task save aufgerufen.

Um diesen Vorgang zu verhindern muss man die Joomla-JS-Routine submitbutton() "überschreiben". Am besten im View-Template selbst.

<script type="text/javascript">
// Override Joomla-Function
function submitbutton(pressbutton) {
if (pressbutton == 'cancel') {
submitform(pressbutton);
return;
}
//validate routine
var form = document.adminForm;
var chk = ...;
if (chk == 0) { // 0=OK
submitform(pressbutton);
} else {
alert('' );
}
}
</script>

Erst wird getestet ob der 'Cancel'-Button gedrückt wurde. Denn dann muß keine Verifizierung stattfinden. (Wer mehr Buttons mit unterschiedlichen Funktionen hat, sollte diesen Teil überarbeiten.)
Wie die Überprüfung der Daten aussieht, lass ich hier mal außen vor. Ich nutzte meistens statt einem Boolean einen Integer-Wert, da es häufig vorkommt, dass unterschiedliche Fehler auftauchen und unterschiedliche Meldungen dazu ausgegeben werden sollen.

 

sozial Bookmarking
Bookmarken bei YIGG Bookmarken bei Mister-Wong Bookmarken bei Icio Bookmarken bei del.icio.us Bookmarken bei Technorati Bookmarken bei Furl Bookmarken bei Spurl Bookmarken bei Yahoo Bookmarken bei Google

huschi, zuletzt 2009-10-30 12:16     Artikel ausdrucken Artikel weiterempfehlen Als PDF-Datei anzeigen

Dieser Inhalt ist unter der Creative-Commons Lizenz lizensiert.

Probleme bitte im Server-Support-Forum diskutieren.

überflüssig 1 2 3 4 5 wertvoll  
Durchschnittliche Bewertung:   5 von 5 (1 Bewertungen)

Artikel kommentieren