Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: LisaS am 30.04.04 - 11:04:36
-
Hallo der JavaScript Neuling braucht mal wieder Hilfe:
In einer Web Maske möchte ich vor dem Speichern eine Eingabevalidierung von bestimmten Feldern durchführen.
Die Methode die jeweilige Eingabevalidierung des Feldes zu nutzen erscheint mir nicht so gut, weil immer eine neue Seite geöffnet wird.
Ich möchte daß gerne mit JavaScript lösen.
Ich habe im JSHeader der Maske folgende Funktion:
function chkFormular()
{
if(document.Formular.time_duration.value == "") {
alert("Bitte Ihren Dauer eingeben!");
document.Formular.time_duration.focus();
return false;
}
}
Jetzt meine Frage:
Wie kann ich diese Funktion vor dem Speichern aufrufen?
zur Zeit Speicher ich das Dokument mit einer Action : @Command([FileSave])
Vieleicht ist mein Ansatz ja auch völlig bekloppt und es gibt noch eine andere Lösung...
Gruß
Hitcher
-
Hier ein Beispiel:
Im JS Header:
// Function zur Validierung von Feldinhalten
// Aufruf durch onSubmit
var retfunc;
//Validierung von normalen Feldern
function validation (feld,feldbez)
{
if (feld.value == "")
{
alert ("Bitte füllen Sie folgendes Feld aus: " + feldbez);
feld.focus();
return false;
}
else
{
return true;
}
}
//Validierung von Dialogfeldern
function validationdialogfeld (feld,feldbez)
{
retfunc = false;
for(i=0;i<feld.length;i++)
{
if (feld.options.selected && feld.options.text != "") //Bei Treffer: Frage "" ab, da leer Vorgabe ist
{
retfunc = true;
}
}
if (retfunc)
{
return true;
}
else
{
alert ("Bitte füllen Sie folgendes Feld aus: " + feldbez);
feld.focus();
return false;
}
}
und im Event OnSubmit
frm=window.document.forms[ 0 ];
if ( validation(frm.Name, "Nachname") && validation(frm.Vorname, "Vorname")
&& validation(frm.Strasse, "Strasse")
&& validation(frm.PLZ, "PLZ") && validation(frm.Ort, "Ort") && validation(frm.Telefon, "Telefon")
)
{
return true;
}
else
{
return false;
}
Das OnSubmit wird vor dem Speichern ausgeführt.
Hinweis:
Bitte bei frm=window.document.forms[ 0 ];
die Leerzeichen löschen. Leider kann man das hier nicht korrekt eingeben, da er eine Aufzählung oder sowas daraus macht...
Andreas
-
Danke Glombi,
funktioniert super.
Gruß
Hitcher