[GastForen Programme Web/Internet PDF Grundlagen / Web / eForms Über Bedingung Auswahl des Optionsfeldes einschränken

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Web/Internet - Webdesign, eForms
Themen
Beiträge
Moderatoren
Letzter Beitrag

Über Bedingung Auswahl des Optionsfeldes einschränken

JuttaKr
Beiträge gesamt: 5

4. Nov 2022, 10:54
Beitrag # 1 von 8
Bewertung:
(4080 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo liebes Forum,

seit ich (ohne jegliche Programmiererfahrung) neuerdings pdf-Formulare erstellen muss, hat mir dieses Forum schon etliche Male den Tag gerettet. An dieser Stelle daher erstmal ein Riesen-Kompliment an alle Helfer hier, ihr seid meine Helden!

Zu meiner heutigen Frage habe ich leider (noch) nichts finden können:

Ich habe ein Formular zur Produkt-Konfiguration erstellt. Über ein Listenfeld muss zuerst eine (in der Liste vorgegebene) Artikelnr. ausgewählt werden, der über das Exportfeld eine bestimmte Eigenart vorgegeben ist. Über Javascript werden bestimmte Kontrollkästchen mit Auswahlmöglichkeiten aus- und eingeblendet, das funktioniert alles ganz super, noch mal ganz herzlichen Dank für eure Vorlagen, die ich hier gefunden habe!

Aber jetzt kommt's: Mein Formular enthält ein Optionsfeld mit 4 Auswahlmöglichkeiten, (die wiederum weitere Felder freischalten). Je nach Auswahl im Listenfeld müsste ich jetzt diese Auswahlmöglichkeiten auch noch einschränken. Geht das überhaupt, oder müsste ich das Optionsfeld dafür in Kontrollkästchen umwandeln?

Vielen Dank schon jetzt für jegliche Tipps.

Grüsse Jutta
X

Über Bedingung Auswahl des Optionsfeldes einschränken

Thomas Richard
Beiträge gesamt: 19324

4. Nov 2022, 13:49
Beitrag # 2 von 8
Beitrag ID: #584752
Bewertung:
(4053 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wenn ich das recht verstehe, willst du ja bloß die Beschriftung der Optionsfelder anpassen, der eigentliche Inhalt (gewählt wurde: Option1, Option2, …) ist davon ja erst mal unbelassen.

Aber ohne was konkretes gesehen zu haben ist das Fischen im Trüben.


als Antwort auf: [#584751]

Über Bedingung Auswahl des Optionsfeldes einschränken

JuttaKr
Beiträge gesamt: 5

7. Nov 2022, 08:57
Beitrag # 3 von 8
Beitrag ID: #584761
Bewertung:
(3935 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Thomas,

ich versuche tatsächlich, innerhalb eines Optionsfeldes die "Auswahl2", "Auswahl3" und "Auswahl4" automatisch auf "nur Lesezugriff" oder "Lese-/Schreibzugriff" zu setzen, je nachdem, welcher Artikel vorher angewählt wurde.

Bei Kontrollkästchen klappt das gut mit diesem Script:

if(this.getField("Listenfeld 2").value=="1010"||this.getField("Listenfeld 2").value=="1070"||this.getField("Listenfeld 2").value=="1070360")
{
this.getField("K19").readonly = false;
}
else
{
this.getField("K19").readonly = true;
}

Wobei in "Listenfeld2" eine Artikelnr. ausgewählt wird, über den Exportwert (hier: 1010 oder 1070, das ist eine Höhenangabe) können dann passende Ausstattungsmöglichkeiten hinzugewählt werden: Ist der Artikel 1010 oder 1070 mm hoch, kann das Kontrollkästchen "K19" angeklickt werden. Das funktioniert auch super, dank der Tipps, die ich hier im Forum gefunden habe!

Jetzt weiss ich schon, dass es immer blöd ist, in einem bestehenden Formular nachträglich was einzufügen oder einschränken zu wollen, aber manchmal ergeben sich eben neue Kombinationen oder Einschränkungen. Für den Exportwert "1070360" (in diesem Fall eine spezielle Kombination aus Höhe und Breite) müsste ich jetzt also aus einem bestehenden Optionsfeld mit 4 Auswahlmöglichkeiten 3 wegsperren. Das Ding ist, dass bei "Auswahl4" auch etwas passiert, es werden nämlich weitergehende Auswahlmöglichkeiten sichtbar, die auf einer anderen Ebene liegen. Das fand ich ziemlich knifflig zu erstellen, deshalb würde ich das Optionsfeld und das Script dahinter im Augenblick ungern noch mal anfassen.

Meine Frage ist daher: kann ich ein Script wie oben überhaupt auf die einzelnen Auswahl-Schaltflächen innerhalb eines Optionsfeldes beziehen, und wenn ja, wie müsste es aussehen?


als Antwort auf: [#584752]

Über Bedingung Auswahl des Optionsfeldes einschränken

Thomas Richard
Beiträge gesamt: 19324

7. Nov 2022, 15:18
Beitrag # 4 von 8
Beitrag ID: #584763
Bewertung:
(3872 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich bin mir immer och nicht sicher, ob ich wirklich verstehe was du vorhast.

Was ich noch nie probiert habe, ist ein Satz Optiopnsfelder tatsächlich je nach vorheriger Auswahl in einen anderen Optionsfeldsatz zu ändern.

Eigentlich ist sowas immer nur scheinbar ein neues Set an Optionen, weil man einfach die Beschriftung der einzelnen Optionsfelder ändert. Der WErt der durch Auswahl eines der Felder exportiert wird ist aber immer der gleiche, man muss ihn dann abhängig von der voranstehenden Auswahl anders behandeln.

Also mal so ins blaue formuliert:
Wenn über die vorangestellte Auswahl auf eine bestimmte Höhenkategorie ausgewählt wird, werden über die folgenden Optionen die dazugehörigen Breiten gewählt.
Wenn der Preis sich dann quasi aus der Fläche ergibt, also Höhe mal Breite muss man eben bei Höhe 101, die gewählte Breite mit einem anderen Wert multiplizieren wie bei Höhe 107.
Und selbst wenn es nicht proportional ist, also bei der höheren Variante nochmal zusätzliche Verstärkungen eingebaut werden müssen, wird trotzdem in dem Moment wo eine Höhenklasse gewählt wird, die Breitenoption dazu passend berechnet.


als Antwort auf: [#584761]

Über Bedingung Auswahl des Optionsfeldes einschränken

JuttaKr
Beiträge gesamt: 5

11. Nov 2022, 10:45
Beitrag # 5 von 8
Beitrag ID: #584828
Bewertung:
(3650 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo wieder,

ich habe inzwischen meinen Denkfehler erkannt. :-)

Ich versuche es jetzt anders zu lösen, indem ich nicht ein, sondern zwei Optionsfelder mit unterschiedlichen Auswahlmöglichkeiten verwende, die ich über die Auswahl der Artikelnummer im Listenfeld jeweils sichtbar und unsichtbar machen möchte.

Dafür habe ich jedem Auswahlelement in meinem "Listenfeld 2" einen Exportwert hinterlegt: 850, 1010, 1070 oder 1070360.

Meine Scripts für das Sichtbar-/Unsichtbarmachen des "Optionsfeld 3" und "Optionsfeld 5" sehen so aus:


Code
if(this.getField("Listenfeld 2").value=="1070360")  
{
this.getField("Optionsfeld 3").display = display.hidden;
}
else
{
this.getField("Optionsfeld 3").display = display.visible;
}


if(this.getField("Listenfeld 2").value=="1010"||this.getField("Listenfeld 2").value=="1070"||this.getField("Listenfeld 2").value=="850")
{
this.getField("Optionsfeld 5").display = display.hidden;
}


if(this.getField("Listenfeld 2").value=="1010"||this.getField("Listenfeld 2").value=="1070"||this.getField("Listenfeld 2").value=="850")
{
this.getField("Optionsfeld 3").display = display.visible;
}


if(this.getField("Listenfeld 2").value=="1070360")
{
this.getField("Optionsfeld 5").display = display.visible;
}
else
{
this.getField("Optionsfeld 5").display = display.hidden;
}



Im Ansatz funktioniert das sogar, aber dabei passiert jetzt etwas ganz Merkwürdiges: Wenn ich im Listenfeld eine Optionen mit Exportwert "1070360" auswähle, ändert sich erstmal gar nichts. Erst wenn ich eine andere Option auswähle, passiert das, was bei "1070360" passieren sollte und umgekehrt. Das Event hinkt also quasi immer einen Schritt hinterher.

Ich habe beim Listenfeld "Ausgewählten Wert sofort einsetzen" aktiviert und als Auslöser für die Aktion "Maustaste loslassen". Beim Testen habe ich das Listenfeld mal mit "TAB", mal mit Mausklick in das nächste Feld verlassen, das machte keinen Unterschied.

Wo ist mein Fehler?


als Antwort auf: [#584763]
(Dieser Beitrag wurde von JuttaKr am 11. Nov 2022, 10:58 geändert)

Über Bedingung Auswahl des Optionsfeldes einschränken

JuttaKr
Beiträge gesamt: 5

11. Nov 2022, 11:47
Beitrag # 6 von 8
Beitrag ID: #584831
Bewertung:
(3625 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ach so, ich sollte vielleicht noch erwähnen, dass ich noch mit dem alten "Acrobat IX Standard" arbeite!


als Antwort auf: [#584828]

Über Bedingung Auswahl des Optionsfeldes einschränken

Thomas Richard
Beiträge gesamt: 19324

12. Nov 2022, 18:17
Beitrag # 7 von 8
Beitrag ID: #584841
Bewertung:
(3325 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Schau mal in den Optionen der Formularfeldliste nach dem Eintrag

'Feldberechnungsreihenfolge festlegen…'

evtl. liegt da der Hase im Pfeffer.


Ansonsten lies dich mal in die Verwendung von event.value in Javascript ein.


Ausserdem würde ich die if-Schleifen nicht doppelt machen:
Code
if(this.getField("Listenfeld 2").value=="1070360")   
{
this.getField("Optionsfeld 3").display = display.hidden;
this.getField("Optionsfeld 5").display = display.visible;
}
else
{
this.getField("Optionsfeld 3").display = display.visible;
this.getField("Optionsfeld 5").display = display.hidden;
}


damit ist eigentlich alles erledigt und du hast nicht das Problem, dass da zwei Schleifen gleichzeitig an der Sichtbarkeit der Optionsfelder 3 und 5 herumwerkeln.


Wenn Opt2 = 1070360
dann
Opt3 unsichtbar und Opt5 sichtbar
sonst (also Opt2 irgendwas ungleich 1070360)
Opt3 sichtbar und Opt5 unsichtbar


als Antwort auf: [#584831]

Über Bedingung Auswahl des Optionsfeldes einschränken

JuttaKr
Beiträge gesamt: 5

14. Nov 2022, 14:33
Beitrag # 8 von 8
Beitrag ID: #584863
Bewertung:
(3209 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Thomas,

Antwort auf: Schau mal in den Optionen der Formularfeldliste nach dem Eintrag

'Feldberechnungsreihenfolge festlegen…'


Ich glaube, diese Option habe ich gar nicht ...
Ich kann lediglich auf dem Reiter "Aktionen" der Feldeigenschaften die einzelnen Aktionen in eine Reihenfolge bringen. Ja, es gibt leider mehrere Aktionen an der Stelle; ich vermute ja auch, dass genau das mein Problem sein könnte. :-(

Antwort auf: Ansonsten lies dich mal in die Verwendung von event.value in Javascript ein.


Ich glaube auch, das sollte ich unbedingt tun. Leider bin ich völlig unbedarft zu dieser ganzen Thematik gestossen und durch erste Erfolge - indem ich irgendwas hier im Forum Gefundenes einfach genommen und auf meine Zwecke angepasst habe, ohne wirklich zu verstehen, was ich da tue - vielleicht auch übermütig geworden.

Könntest du mir denn evtl. eine gute Seite für Einsteiger empfehlen, wo ich mich erstmal mit Grundlagen vertraut machen kann?


als Antwort auf: [#584841]
X