Scripting Seite, Teiformular und Feld sichtbar/unsichtbar machen

Aus SAP-Wiki
Wechseln zu: Navigation, Suche

In JavaScript und FormCalc ist es leicht ein Feld unsichtbar zu machen, bzw. wieder sichtbar zu machen mit der Eigenschaft "presence".

Die Ausprägungen sind hier "invisible", "visible" und "hidden". Ob beim Ausblenden von Objekten "hidden" oder "invisible" sinnvoll ist, hängt vom Anwendungsfall ab.

Meist wird sich das Coding in einem Variablenfeld (Textfeld, numerisches Feld, Dezimalfeld etc.) oder in einem Teilformular befinden. Ein Text kann kein Coding enthalten.

Invisible, Hidden und Visible

  • Invisible: Feld wird ausgeblendet, White Space verbleibt. Felder, die mit „invisible“ ausgeblendet werden, können durch Scripting immer noch abgefragt werden Beispiel.
  • HIdden: Feld wird ausgeblendet, White Space wird auch gelöscht im Inhaltsbereich (nicht auf Masterseite). Felder, die mit „hidden“ ausgeblendet wurden, deren Wert kann auch per Scripting nicht mehr abgefragt werden.können
  • Visible: Feld wird sichtbar gemacht. Meist ist „visible“ Standardeinstellung eines Feldes, Teilformulars etc. und man wird eher Objekte auf „invisible“ bzw. „hidden“ setzen.

JavaScript

Objekte unsichtbar machen mit „invisible“ (Werte können abgefragt werden per Scripting).

Feldname.presence = "invisible";     //Feld auf gleicher Ebene
this.presence = „invisible“;         //Selbstreferenz
this.parent.presence = "invisible";  //übergeordnetes Teilformular/Objekt ausblenden

Objekte unsichtbar machen mit „hidden“ (Werte können nicht mehr abgefragt werden per Scripting).

Feldname.presence = "hidden";        //Feld auf gleicher Ebene
this.presence = „hidden“;            //Selbstreferenz
this.parent.presence = "hidden";     //übergeordnetes Teilformular/Objekt ausblenden

Objekte (wieder) sichtbar machen mit „visible“.

Feldname.presence = "visible";       //Feld auf gleicher Ebene
this.presence = „visible“;           //Selbstreferenz
this.parent.presence = "visible";    //übergeordnetes Teilformular/Objekt anzeigen

FormCalc

Beschreibungen siehe oben bei JavaScript..

Feldname.presence = "invisible"
$.presence = „invisible“
$.parent.presence = "invisible"
Feldname.presence = "hidden"
$.presence = „hidden“
$.parent.presence = "hidden"
Feldname.presence = "visible"
$.presence = „visible“
$.parent.presence = "visible"

xfa.record (Kontextobjekt abragen)

Scripting Formularobjekte adressieren

Abfrage von „invisible“ Feldern

  • Es kann auch sinnvoll sein Felder in den LiveCycle Designer zu ziehen und dessen Präsenz auf „invisible“ zu setzen, um einerseits dieses Feld nicht bei der Formularausgabe zu sehen, aber trotzdem dessen Wert von einem anderen Scriptingknoten abfragen zu können. Mit „hidden“ ist diese Abfrage per Scripting nicht mehr möglich.
  • Beispiel: Logo in Abhängigkeit von einer Bedingung ausblenden

Web-Link

Adobe JavaScript-Beispiele