Formularfelder einblenden in Abhängigkeit von Auswahl im DropDown Menü
Hallo Liebe Community.
Im Moment bin ich dabei ein Formular zu erzeugen. Soweit so gut und es funktioniert wie ich es mir vorstelle. Nun mein Problem. Es sind mehrere Formulare die sich in nur wenigen Feldern unterscheiden. Mein Vorhaben ist es, wird ein bestimmtes Feld ausgefüllt, sollen bestimmte Felder verborgen werden bzw. andere erscheinen. Ist denn überhaupt so etwas möglich? Kann mir jemand Rat geben? Im Netz konnte ich bislang nichts genaues finden.
Vereinfacht gesagt: Es gibt Formular A, Formular B und Formular C. Jedes dieser Formulare haben zum Teil andere Felder zum Ausfüllen. Ich möchte alle drei Formulare in ein/e Formular/PDF vereinen.vereinen.
\documentclass[
12pt, % Schriftgröße
a4paper, % Papierformat
oneside, % einseitiges Dokument
final % Status des Dokuments (final/draft)
]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{hyperref}
\usepackage[pdftex]{eqexam}
\usepackage[pdftex]{insdljs}
\begin{insDLJS}[Daten]{Daten}{Auswertung}
var done=0;
function StartFunc(){
if(!done){
done=1;
this.getField(’Wessenprofil’).display=display.hidden;
this.getField(’Mailadr’).display=display.hidden;
this.getField(’AgentOne’).display=display.hidden;
this.getField(’Telber’).display=display.hidden;
this.getField(’Signatur’).display=display.hidden;
this.getField(’Drucker’).display=display.hidden;
this.getField(’Keyboard’).display=display.hidden;
this.getField(’Textbau’).display=display.hidden;
this.getField(’Favorit’).display=display.hidden;
%app. alert (’Das Formular wurde ge\u00F6 ffnet .’,3 );
}
}
function VeraenderungFunc()
{
if((event.value==’vccc’)||(event.value==’CallCenter’))
{
this.getField(’Wessenprofil’).display=display.visible;
this.getField(’Mailadr’).display=display.visible;
this.getField(’AgentOne’).display=display.visible;
this.getField(’Telber’).display=display.visible;
this.getField(’Signatur’).display=display.visible;
this.getField(’Drucker’).display=display.visible;
this.getField(’Keyboard’).display=display.visible;
this.getField(’Textbau’).display=display.visible;
this.getField(’Favorit’).display=display.visible;
this.getField(’Wessenprofil’).value=’Wessenprofil’;
this.getField(’Mailadr’).value=’Mailadr’;
this.getField(’AgentOne’).value=’AgentOne’;
this.getField(’Telber’).value=’Telber’;
this.getField(’Signatur’).value=’Signatur’;
this.getField(’Drucker’).value=’Drucker’;
this.getField(’Keyboard’).value=’Keyboard’;
this.getField(’Textbau’).value=’Textbau’;
this.getField(’Favorit’).value=’Favorit’;
this.getField(’Wessenprofil’).setFocus();
}
elseif((event.value==’cc’)||(event.value==’CustomerCare’))
{
this.getField(’Wessenprofil’).display=display.visible;
this.getField(’Mailadr’).display=display.visible;
this.getField(’AgentOne’).display=display.hidden;
this.getField(’Telber’).display=display.hidden;
this.getField(’Signatur’).display=display.hidden;
this.getField(’Drucker’).display=display.hidden;
this.getField(’Keyboard’).display=display.hidden;
this.getField(’Textbau’).display=display.hidden;
this.getField(’Favorit’).display=display.hidden;
this.getField(’Wessenprofil’).value=’Wessenprofil’;
this.getField(’Mailadr’).value=’Mailadr’;
this.getField(’AgentOne’).value=’AgentOne’;
this.getField(’Telber’).value=’Telber’;
this.getField(’Signatur’).value=’Signatur’;
this.getField(’Drucker’).value=’Drucker’;
this.getField(’Keyboard’).value=’Keyboard’;
this.getField(’Textbau’).value=’Textbau’;
this.getField(’Favorit’).value=’Favorit’;
this.getField(’Wessenprofil’).setFocus();
}
}
\end{insDLJS}
\begin{document}
\begin{Form}
\renewcommand*{\DefaultOptionsofText}{print,borderstyle=U}
\begin{tabular}{p{7.45cm}p{7.45cm}}
Vorname & Nachname \\
\TextField[name=Vorname, width=7.45cm]{} & \TextField[name=Nachname,width=7.45cm]{} \\
& \\
Personalnummer & \\
\TextField[name=Personalnummer, width=7.45cm]{} & \\
& \\ \\ \hline \\
\textbf{Bei Neueinstellung} & \\
Abteilung & Ab \\
\ChoiceMenu[combo,name=Einsatzort,width=7.45cm]{} & \\
& \TextField[name=Abdatum,width=7.45cm]{} \\
& \\ \\ \hline \\
\textbf{Bei Abteilungswechsel} & \\
Abteilung jetzt & Bis \\
\TextField[name=Einsatzortjetzt, width=7.45cm]{} & \TextField[name=Bis,width=7.45cm]{} \\
& \\
Abteilung dann & Ab \\
\TextField[name=Einsatzortdann, width=7.45cm]{} & \TextField[name=Abdatum,width=7.45cm]{} \\
& \\ \\ \hline \\
\textbf{Bei Austritt aus dem Unternehmen} & \\
Letzter Tag der Beschäftigung & \\
\TextField[name=Letztertag, width=7.45cm]{} & \\
& \\
\end{tabular}
\end{Form}
\TextField[name=Wessenprofil,width=7.45cm,validate={VeraenderungFunc();}]{Wessen Profil} \\\\
\TextField[name=Mailadr,width=7.45cm,height=1.5cm,validate={VeraenderungFunc();}]{Welche Mailadresse} \\\\
\CheckBox[width=0.5cm, height=0.5cm, name=AgentOne,validate={VeraenderungFunc();}]{Ja oder nein} \\\\
\TextField[name=Telber,width=7.45cm,validate={VeraenderungFunc();}]{Bereich Telefon} \\\\
\TextField[name=Signatur,width=7.45cm,height=1.5cm,validate={VeraenderungFunc();}]{Welche Signatur} \\\\
\TextField[name=Drucker,width=7.45cm,validate={VeraenderungFunc();}]{Welcher Drucker} \\\\
\TextField[name=Keyboard,width=7.45cm,validate={VeraenderungFunc();}]{Keyboardlayout} \\\\
\TextField[name=Textbau,width=7.45cm,validate={VeraenderungFunc();}]{Welche Textbausteine} \\\\
\TextField[name=Favorit,width=7.45cm,validate={VeraenderungFunc();}]{Welche Favoriten} \\\\
\end{document}