Seite 1 von 1

Formular per JavaScript (insDLJS) senden

Verfasst: Mi 21. Apr 2021, 12:39
von Joerg66

Hallo,
ich habe ein Formular erstellt, das am Ende digital signiert werden soll. Dazu ist es nötig zu überprüfen, ob die Signatur vorhanden ist und "senden" nur auszuführen wenn dem so ist.
(Versuche das PushButton oder Submit-Button erst nach der Signatur darzustellen sind gescheitert)

\documentclass[parskip=half, a4paper, landscape]{scrartcl}
\pagestyle{empty}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage[margin=0.5cm]{geometry}
\usepackage{digsig}
\usepackage{insdljs}
\usepackage{xcolor}
    \pagecolor{gray!20}
\usepackage{hyperref}

\begin{insDLJS}[FormularVersand]{FormularVersand}{JavaScript}
	function Absenden() {
		if (this.getField("Signatur").value == "") {
			app.alert("Das Dokument ist nicht signiert");
		}
		else {
			this.Submit(); %hier habe ich den Klemmer
		}
	}
\end{insDLJS}

\begin{document}
	\begin{Form} [action={mailto:joerg.xxx@YYY.de?subject=Auftrag&body=Der Auftrag ist an diese E-Mail angehaengt}]
		\renewcommand*{\DefaultOptionsofText}{print,bordercolor={orange},backgroundcolor={lightgray!10},borderstyle=U}
		\begin{tabular}{|lcr|}\hline
			\textbf{Persönliche Angaben} & &  \\[1ex] \hline
			& & \\
			\TextField[name=Vorname, width=5cm]{Vorname:}
			& 
			&  \TextField[name=Nachname,width=5cm]{Nachname:}   \\ 
			& & \\
		      	\digsigfield{5cm}{3cm}{Signatur}
			& & \\
			& & \\ \hline
		\end{tabular} \\[1ex]
	\end{Form}
\PushButton[onclick={Absenden();}]{Senden}	
\end{document}

Wie geht das?
LG Jörg


Re: Formular per JavaScript (insDLJS) senden

Verfasst: Do 22. Apr 2021, 08:46
von Joerg66

Ich habs gefunden. Die Funktion muß so aussehen:

	function Absenden() {
		if (this.getField("Signatur").value == "") {
			app.alert("Das Dokument ist nicht signiert");
		}
		else {
			this.submitForm({
				cURL:"mailto:joerg.Xxxxx@yyyyyyyy.de",
				cSubmitAs:"FDF"
			})
		}
	}