Ausgeblendete Teilformulare wieder einblenden

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
KKD
Beiträge: 36
Registriert: 24.02.2012, 11:49

Ausgeblendete Teilformulare wieder einblenden

Beitrag von KKD » 23.05.2013, 19:44

Hallo zusammen

ich blende mit einem Button alle Teilformulare mit Namen "prio33" aus.

Code: Alles auswählen

for(var nPageCount = 0 ; nPageCount < xfa.host.numPages; nPageCount++)
{
var oText = xfa.layout.pageContent(nPageCount,"subform");
var nodesLength = oText.length;
for (var i = 0; i<nodesLength;i++){
var oItem = oText.item(i);
if(oItem.name == "prio33") {
oItem.presence = "hidden";
}
}
}
Soweit ok, aber nun würde ich sie gerne über einen zweiten Button wieder einblenden können, und das geht mit obigem Script nicht (auch wenn ich auf visible ändere), vermutlich weil sie ja ausgeblendet sind und somit nicht Teil des Layouts sind.

Kann mir jemand sagen wie ich die ausgeblendeten Teilformulare wieder ansprechen kann?

Für Hilfe bin ich äusserst dankbar, da ich leider JavaScript nur ansatzweise verstehe bis jetzt :?

Vielen Dank
Kenneth

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Ausgeblendete Teilformulare wieder einblenden

Beitrag von nele_sonntag » 26.05.2013, 17:53

Hallo Kenneth,

ganz einfach geht das ohne Schleife und...mit Formcalc.

Einfach in deinen Button im Click-Ereignis:

Code: Alles auswählen

prio33[*].presence = "visible"
Und alles ist gut. :)

LG Mandy

PS: habe auch mal kurz über dein anderes Problem geschaut, die Seiten sind kein Thema, nur funktioniert eben die Neunummerieung ab dem zweiten Abschnitt noch nicht korrekt.

KKD
Beiträge: 36
Registriert: 24.02.2012, 11:49

Ausgeblendete Teilformulare wieder einblenden

Beitrag von KKD » 27.05.2013, 11:16

Hallo Mandy

vielen Dank, auf die Idee, das mit FormCalc zu lösen, bin ich gar nicht gekommen. Allerdings erhalten ich beim Ausführen des Buttons dann folgende Meldung: siehe Anhang.

Wird das subform nicht erkannt? Mache ich was falsch?

Lg Kenneth
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Ausgeblendete Teilformulare wieder einblenden

Beitrag von armine » 27.05.2013, 17:12

Hallo Kenneth,

mit [font=courier new]prio33[ * ][/font][font=courier new].presence = "visible"[/font] erwischt du mit FormCalc alle Objekte namens prio33. die unter dem gleichen Knoten liegen wie dein Button. Wenn du noch weitere in Subforms hast, dann musst du für jedes Subform eine Zeile Code mit dem treffen Pfad dazu schreiben.

vg armine

KKD
Beiträge: 36
Registriert: 24.02.2012, 11:49

Ausgeblendete Teilformulare wieder einblenden

Beitrag von KKD » 27.05.2013, 17:28

Hallo Armine,

Danke für den Hinweis. Dass wollte ich eigentlich verhindern, denn das Teilformular kommt diverse Mal vor. Darum habe ich es zuerst über die Schleife in JavaScript versucht. Das Ausblenden klappt ja so problemlos, aber das Einblenden auf die gleiche Art nicht mehr... Gibt es da etwas spezielles, das beachtet werden muss, um ausgeblendete Teilformulare wieder einzublenden?

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Ausgeblendete Teilformulare wieder einblenden

Beitrag von armine » 28.05.2013, 10:56

Hallo Kenneth,

ich habe so eine Ahnung, dass deine Abfrage bei nicht mehr funktioniert, wenn die Objekte deiner Begierde erst mal "hidden" sind. Mein Vorschlag:
Mach ein neues Texffeld (locations_of_prio33)  auf und setze es auf "hidden". Nun ist das Ereignis "exit" arbeitslos. Da packst du deine Sucherei rein.
Die Präambel des Buttons ist:
[font=courier new]if (!locations_of_prio33.rawValue) {
    locations_of_prio33.execEvent("exit")
}[/font]
Nun hast du dein Suchergebnis dauerhaft hinterlegt. Damit kannst du dann in einer Schleife "visible" und auch "hidden" abarbeiten.

vg armine

KKD
Beiträge: 36
Registriert: 24.02.2012, 11:49

Ausgeblendete Teilformulare wieder einblenden

Beitrag von KKD » 29.05.2013, 10:27

Hallo armine

vielen Dank für den Input. Ich habe Stunden probiert, ohne Erfolg allerdings.

Wo genau sollen die Suchschleifen rein? Das Ausblenden der Teilformulare prio33 klappt, doch das wieder einblenden immer noch nicht.

Wenn ich darf, würd ich Dir gerne mal das Dok. per Mail senden, damit du siehst, wie es aufgebaut ist.

Lg Kenneth

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Ausgeblendete Teilformulare wieder einblenden

Beitrag von armine » 30.05.2013, 18:10

Hallo Kenneth,

mit meiner Vermutung war ich auf dem Holzweg. Grade hatte ich ein PDF mit ähnlicher Funktionalität in den Fingern. Da läßt sich nun mit einem Button alles aus- und wieder einblenden.

vg armine
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

KKD
Beiträge: 36
Registriert: 24.02.2012, 11:49

Ausgeblendete Teilformulare wieder einblenden

Beitrag von KKD » 30.05.2013, 18:58

Hallo armine

sorry, ich habe Dir mein Formular noch nicht geschickt. Werde das aber gerne noch machen. Dein Formular habe ich soeben angeschaut, dass sieht sehr gut aus. Die Frage ist nur, wie ich das für nur ein einzelnes Teilformular umsetzte, das ausgeblendet wird. Mein Formular folgt gleich per Mail...

Achtung, nicht erschrecken, es ist auf den ersten Moment ziemlich komplex, doch das scheint nur so :-)) Ich habe es ein bisschen modifiziert, damit du dich zurecht findest... Um die hinteren Seiten einzublenden musst du unten die Checkboxen Antrag, Konzept, etc. anwählen. Es geht um das Teilformular prio33, das auf jeder Seite vorkommt. Ich habe den entsprechenden Button rot eingefärbt, damit du gleich siehst, worum es geht.

Vielen Dank...

KKD
Beiträge: 36
Registriert: 24.02.2012, 11:49

Ausgeblendete Teilformulare wieder einblenden

Beitrag von KKD » 17.06.2013, 08:22

Hallo, das Problem ist leider noch nicht gelöst. Kann mir jemand sagen, wie ich die ausgeblendeten Teilformulare (mehrere mit dem gleichen Namen) wieder einblenden kann?

Ich blende diese über einen Button aus und würde diese gerne über einen Button wieder einblenden, aber anscheinend kann ich sie nicht mehr ansprechen, wenn sie mal "hidden" sind....

Vielen Dank für Inputs.
Lg Kenneth

Antworten