Dropdownliste prüfen und automatisch füllen

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
Antworten
Goofy´s bester Freund
Beiträge: 12
Registriert: 03.01.2011, 19:23

Dropdownliste prüfen und automatisch füllen

Beitrag von Goofy´s bester Freund » 05.01.2011, 21:28

Hallo,

ich versteh´s nicht.... :( 

Eine Dropdownliste soll nach drücken der Schaltfläche geprüft werden und wenn keine Auswahl stattfand soll automatisch ein Platzhalter gezogen werden. Es darf nur kein "null" sein! Lese das Feld aus und übernheme den Inhalt mit in die Mail. Wenn dann an der Stelle "null" steht, gibt es Kollegen die das dann als 0 lesen. Das wäre fatal... Wie bekomme ich das hin? Habe mir schon im Forum die Augen wund gelesen und finde nichts was mir helfen könnte.

[fontsize=2]Vielen Dank für HILFE[/fontsize]

[fontsize=2]Goofy´s bester Freund
[/fontsize]

Benutzeravatar
FileAffairs
Beiträge: 372
Registriert: 15.09.2008, 20:14

Dropdownliste prüfen und automatisch füllen

Beitrag von FileAffairs » 05.01.2011, 21:31

Hallo Goofy's bester Freund,

kannst Du noch kurz schreiben nach dem drücken welcher Schaltfläche Du meinst?  Falss es ein submit ist kannst Du die Funktion in das preSubmit event unterbringen.

Schönen Gruß

Maruan Sahyoun | fileaffairs.de

Goofy´s bester Freund
Beiträge: 12
Registriert: 03.01.2011, 19:23

Dropdownliste prüfen und automatisch füllen

Beitrag von Goofy´s bester Freund » 05.01.2011, 21:35

Hallo,

ja!

 
[fontsize=2][fontsize=2]
var[/fontsize]
[/fontsize]
[fontsize=2] Mail [/fontsize][fontsize=2][fontsize=2]=[/fontsize][/fontsize][fontsize=2] "mailto:" [/fontsize][fontsize=2][fontsize=2]+[/fontsize][/fontsize][fontsize=2] Mailto [/fontsize][fontsize=2][fontsize=2]+[/fontsize][/fontsize][fontsize=2] "?Subject=" [/fontsize][fontsize=2][fontsize=2]+[/fontsize][/fontsize][fontsize=2] Betreff [/fontsize][fontsize=2][fontsize=2]+[/fontsize][/fontsize][fontsize=2] "&Body=" [/fontsize][fontsize=2][fontsize=2]+[/fontsize][/fontsize][fontsize=2] Nachricht;}

event.target.submitForm({

cURL[/fontsize][fontsize=2][fontsize=2]:[/fontsize][/fontsize][fontsize=2] Mail[/fontsize][fontsize=2][fontsize=2],
[/fontsize]
[/fontsize]
[fontsize=2]
bEmpty[/fontsize][fontsize=2][fontsize=2]:[/fontsize][/fontsize][fontsize=2] [/fontsize][fontsize=2][fontsize=2]true,
[/fontsize]
[/fontsize]
[fontsize=2]
cSubmitAs[/fontsize][fontsize=2][fontsize=2]:[/fontsize][/fontsize][fontsize=2] "PDF"

});

 

Das wäre klasse, vorab vielen Dank.

 

Goofy´s bester Freund
[/fontsize]

Benutzeravatar
FileAffairs
Beiträge: 372
Registriert: 15.09.2008, 20:14

Dropdownliste prüfen und automatisch füllen

Beitrag von FileAffairs » 05.01.2011, 21:46

Hallo,

den exakten Code kann ich ohne das konkrete Formular natürlich nicht schreiben. Wie gesagt in das preSubmit Event (JavaScript als Scriptsprache) so was ala

Code: Alles auswählen

dropdown.rawValue = "ersatzvalue"
 

Gruß

Maruan Sahyoun | fileaffairs.de

Goofy´s bester Freund
Beiträge: 12
Registriert: 03.01.2011, 19:23

Dropdownliste prüfen und automatisch füllen

Beitrag von Goofy´s bester Freund » 05.01.2011, 22:10

Kann ich Dir noch eine andere Frage stellen?

Habe 3 Felder und möchte wenn in Feld 1 (Dropdown und Pflichtfeld) ein JA ausgewählt wird, dass Feld 2 ein Pflichtfeld wird. Wenn Feld 1 mit Nein ausgewählt wird, dass dann Feld 3 ein Pflichtfeld wird. Geht das? 

 

Vielen Dank im voraus

 

Goofy´s bester Freund 

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

Dropdownliste prüfen und automatisch füllen

Beitrag von nele_sonntag » 05.01.2011, 23:00

Das geht sehr gut, wenn man das Skript von walde zur Überprüfung der Pflichtfelder beim Submit-Button, um einige IF-Verzweigungen erweitert.

Siehe hier, mit teilweiser ausführlicher Erklärung des Codes. (Hatte damals jede Zeile kommentiert, zum besseren Verständnis) Geschrieben: 25 Aug 2010 10:57

http://acronaut.de/forum44/1495.html

Code: Alles auswählen

if(Formular1.Seite_1.Kontrollk_FELD1.rawValue=="1")
{
    var Valid = true;
    var Sammelmeldung = "";
    
    if(Formular1.Seite_1.Feld2.rawValue == null)
    {
        Valid = false;
        Sammelmeldung = Sammelmeldung + "- Feld 2" + "\n";
    }
    if(Valid)
    {
        event.target.mailDoc
        ({
            bUI: false,
            cTo: "test@test.de",
            cSubject: "Testbetreff",
            cMsg: "Sehr geehrte Damen und Herren,nnanbei finden Sie ...nnFreundliche Grüße"
        });
    }
    else
    {
        app.alert("Folgende Felder wurden nicht ausgefüllt:nn" + Sammelmeldung + "\nBitte füllen Sie diese Felder vor Versand der E-Mail vollständig aus. Danke.",1);
    }

if(Formular1.Seite_1.Kontrollk_FELD1.rawValue=="0")
{
    var Valid = true;
    var Sammelmeldung = "";

    if(Formular1.Seite_1.Feld3.rawValue == null)
    {
        Valid = false;
        Sammelmeldung = Sammelmeldung + "- Feld 3" + "\n";
    }
    if(Valid)
    {
        event.target.mailDoc
        ({
            bUI: false,
            cTo: "test@test.de",
            cSubject: "Testbetreff",
            cMsg: "Sehr geehrte Damen und Herren,nnanbei finden Sie ...nnFreundliche Grüße"
        });
    }
    else
    {
        app.alert("Folgende Felder wurden nicht ausgefüllt:\n\n" +  Sammelmeldung + "nBitte füllen Sie diese Felder vor Versand der E-Mail  vollständig aus. Danke.",1);
    }
 
Bei mir war es so, dass, wenn bspw. Farbdruck vom Kunden gewünscht wurde, er dann auch A4-Größe ausfüllen musste, dieses also zum Pflichtfeld wurde.

Wählte er aber Klausuren aus, dann gab es andere Pflichtfelder.
Habe somit bestimmt 15 verschiedene Konstellationen abgefragt.

Jetzt musst Du Dir nur Deine Konstellationen per Skript zusammenstellen.

LG Mandy

Benutzeravatar
FileAffairs
Beiträge: 372
Registriert: 15.09.2008, 20:14

Dropdownliste prüfen und automatisch füllen

Beitrag von FileAffairs » 06.01.2011, 07:03

Hallo,

einfach die entsprechende Eigenschaft in das exit Event von Feld 1 die Eigenschaft von Feld 2 ändern:

Code: Alles auswählen

Feld2.validate.nullTest = "error";
Zurücksetzen kannst Du das auch mit:

Code: Alles auswählen

Feld2.validate.nullTest = "disabled";
Übrigens hat die online Hilfe zu LiveCycle Designer die gesamte Scripting Referenz - einfach bei Gelegenheit immer mal reinschauen.

Gruß

Maruan Sahyoun | fileaffairs.de

Antworten