Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: FRANKI am 28.10.04 - 10:20:35
-
Hallo zusammen,
ich habe in einer Maske ein bearbeitbares Kontrollkästchen.
Es können mehrere Optionen ausgewählt werden.
Es muß allerding eine Ausgewählt bleiben.
Ich kann hier alle Haken rausnehmen, wie kann ich verhindern, dass ein Anwender alle Haken rausnimmt??
Danke
FRNAKI
-
Prüf' doch einfach in der Eingabevalidierung, ob ein Wert gesetzt ist ... Reicht Dir das nicht aus ?
Bernhard
-
Hab' da ein Verständnisproblem....
was/wie mache ich das ??
Danke
FRANKI
-
Hi,
also ich hab das mal für ne Dialogbox gemacht.
Und zwar wenn du in der Maske bist, und das Feld ausgewählt hast,
dann kannst du unten unter Objekte/Eingabevalidierung eine Formel eingeben. Bei mir hab ich dann folgendes verwendet:
@If(Feld="" ;@Failure("Sie müssen blablabla eingeben!");@Success)
Nun kann der User die Maske nicht mehr speichern ohne das Feld irgendwie auszufüllen. Ich denke das das bei deinem Problem ähnlich gehn müsste.
Gruß Fidel
-
danke schon mal, aber.....
das funzt bei mir nicht, da die Maske per Browser aufgerufen wird;-(
Kann mir jemand noch einen Tip geben??
FRANKI
-
Eine Eingabevalidierung funktioniert auch im Web, allerdings möchte man das eher keinem User zumuten, da eine extra Page erzeugt wird.
Besser und schicker wäre da eine JavaScript Lösung, die beim OnSubmit aufgerufen wird.
Andreas
-
Das war eine gute Idee, aber....
bei diesem Typ gibt es keine "OnSubmit".
Habe mir jetzt gedacht ich könnte dann das JAvaScript Ereignis bei OnMouseDown antriggern.
Aber wie "schieße" ich meinen Rückgabewert des Kontrollkästchen um, wenn keine Auswahl getroffen wurde??
FRANKI
-
Das OnSubmit ist ein Event der Maske, nicht des Feldes.
Andreas
-
ok, hab ich verstanden ;-)
aber jetzt bleibt noch mein Problem:
wenn also nicht angewählt ist fange ich das dort ab.
wie frage ich aber das "kontrollkästchen" ab??
wenn ich mir den wert zurückgeben lasse, dann bekomme ich object NodeList.
Wie komme ich an die Werte heran??
FRANKI
-
Hier eine JavaScript Funktion, die Du in den JS Header einfügen musst:
//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;
}
}
Der Aufruf dann im OnSubmit:
frm=window.document.forms[0];
if ( validation(frm.DeinFeldName, "Textausgabe") {
return true;
}
else
{
return false;
}
Das geht für eine Dialogliste. Ich denke, Kontrollkästchen sollten damit auch validiert werden können.
Andreas
-
geht noch viel einfacher.
ich habe einfach beim onSubmit
den Wert Feldname.item((Feldname.length-1)).checked in einer if-Abfrage auf true gesetzt.
das hat jetzt zur Folge, daß, wenn alle abgewählt wurden, immer der Letzte wieder den Haken bekommt.
Danke für die Unterstützung
Gruß
FRANKI