Seite 1 von 2

NullTest auf Optionsfelder

Verfasst: 14.12.2011, 13:57
von f.vorbrodt
Hallo,

ist es möglich, ein Optionsfeld einem NullTest zu unterziehen?
Beim Textfeld funktioniert's, beim Optionsfeld nicht ...

Ziel: Abhängig von einem Wert im Optionsfeld1 will ich ein Optionsfeld2 als obligatorisch setzen oder nicht ...

Kann mir jemand weiterhelfen?

Code: Alles auswählen

Formular1.T1.Optionsfeld1.#field[0]::preSubmit:form - (JavaScript, client)

if (this.rawValue == "1")
{
    Textfeld1.validate.nullTest = "error";
    Optionsfeld2.validate.nullTest = "error";
}
else
{
    Textfeld1.validate.nullTest = "disabled";
    Optionsfeld2.validate.nullTest = "disabled";
}

NullTest auf Optionsfelder

Verfasst: 14.12.2011, 14:44
von armine
Nimm doch Kontrollkästchen (die zur Not optisch auf Optionsfeld gequält werden).
Da kann man einen Klick auch wiederrufen. Bei einem einzelnen Optionsfeld in einer Optionsfeldliste kann der User einen Klick nicht rückgängig machen.
 

NullTest auf Optionsfelder

Verfasst: 14.12.2011, 15:13
von f.vorbrodt
Danke für die rasche Antwort.
Was ich aber erreichen will (vielleicht hatte ich mich unglücklich ausgedrück):

Es gibt zwei Optionsfeldgruppen (o1 und o2) mit je zwei Optionen "ja", "nein".
Benutzereingabe in o1 ist erforderlich.
Wählt der Benutzer in o1 die Option "ja", so soll auch die Benutzereingabe in o2 erforderlich werden, ansonsten ist sie optional.

NullTest auf Optionsfelder

Verfasst: 14.12.2011, 20:30
von armine
Geht es so?

NullTest auf Optionsfelder

Verfasst: 15.12.2011, 12:10
von f.vorbrodt
Hallo armine, danke für Deine Mühe.
Der Hinweis auf .presence war schon mal sehr hilfreich.
Ich habe jetzt eine kleine Test-PDF erstellt. Soweit funktioniert das schon sehr gut.

Was noch nicht funktioniert:
Klicke ich nach dem Öffnen des Formulars gleich auf "ja" in der ersten "Optionsgruppe", passiert nichts. Klicke ich hingegen zu Beginn auf "nein", funktioiniert's ...

Dann noch eine Frage:
Wie bekomme ich es hin, dass, wenn ein erforderliches Kontrollkästchen nicht markiert ist, und ich dann auf die Schaltfläche klicke, ein Hinweis erscheint?
Beim im Designer angelegten und als erforderlich markierten Textfeld erscheint die Meldung ...

NullTest auf Optionsfelder

Verfasst: 15.12.2011, 22:14
von armine
Alle Wünsche erfüllt?
Angeklickte KKs werden inaktiv, wie richtige Optionsfelder und einen "Nulltest" gibt’s auch.

NullTest auf Optionsfelder

Verfasst: 16.12.2011, 09:09
von f.vorbrodt
Danke armine, sehr gut, große Hilfe!
Wenn Du mir jetzt noch verraten kannst, wie ich es schaffe, dass die Überprüfung der Eingabepflicht der KKs nicht auf einem Extra-Button liegt, dann hast Du mir endgültig den Tag gerettet.

Ziel ist, dass wenn man auf "Schaltfläche" klickt, das Formular auf die Pflichteingaben validiert wird und dann, wenn alles ok ist, das PDF als XDP an einen Webserver geschickt wird. Mit dem beispielhaften Textfeld im Formular funktioniert die Überprüfung.

NullTest auf Optionsfelder

Verfasst: 16.12.2011, 11:49
von armine
Du musst nur den Code aus dem Button "Nulltest" in deine Schaltfläche übernehmen.
armine

NullTest auf Optionsfelder

Verfasst: 16.12.2011, 11:56
von f.vorbrodt
Das hatte ich versucht und im PreSubmit-Ereignis das Skript eingebaut. Es kommt dann zwar die Fehlermeldung, aber das Formular wird trotzdem abgeschickt.
Wie kann ich das Absenden verhindern?
Die Schaltfläche hat den Kontrolltyp "Absenden".


NullTest auf Optionsfelder

Verfasst: 17.12.2011, 14:13
von armine
Setze

[font=courier new]Formular1.Seite1.Schaltfläche2::click - (JavaScript, client)[/font]

[font=courier new]if (TF1.kk1.rawValue == "1" && TF2.kk3.rawValue == 0 && TF2.kk4.rawValue == 0) {
    xfa.host.messageBox("Mindestens ein erforderliches Feld war leer. Füllen Sie die erforderlichen Felder (markiert) aus, bevor Sie fortfahren.", "", 0);
} else {
    Schaltfläche1.execEvent("click")
}[/font]

ein und lass Schaltfläche1 per "Präsenz: Ausgeblendet ..." verschwinden.