[GastForen Programme Web/Internet PDF Grundlagen / Web / eForms Kontrollkästchen als Pflichtfeld

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Web/Internet - Webdesign, eForms
Themen
Beiträge
Moderatoren
Letzter Beitrag

Kontrollkästchen als Pflichtfeld

ninjagame
Beiträge gesamt: 9

18. Jan 2010, 11:10
Beitrag # 1 von 11
Bewertung:
(28391 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Tag,

ich soll ein ausfüllbares PDF-Formular erstellen und dabei sicherstellen, dass alle Kontrollkästchen (checkbox) angekreuzt sind, bevor das Formular gespeichert bzw. abgesandt wird. Im Gegensatz zu Textfeldern, wo man da noch "erforderlich" ankreuzen kann, ist diese Option bei Kontrollkästchen nicht verfügbar. Frage:
Wie schaff ich's? Brauche ich dazu ein JavaScript? Wenn ja - wie müsste das aussehen?

Danke!
X

Kontrollkästchen als Pflichtfeld

MurphysLaw
Beiträge gesamt: 588

18. Jan 2010, 11:48
Beitrag # 2 von 11
Beitrag ID: #430541
Bewertung:
(28367 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Howdy!

Ja, das geht m.E. nur mit Javascript.
Also mach am besten zwei Schaltflächen "E-Mail" bzw "Speichern" und hinterlege dort ein JS. Zum Prüfen vor Verschicken per E-Mail sollte das Skript so oder so ähnlich aussehen:
Code
allgood(); 
function allgood()
{
var mel;
mel=""
for (var i=0;i<this.numFields;i++)
{
var fName=this.getNthFieldName(i);
var f=this.getField(fName);
if ((f.type = "checkbox") && !(f.checked))
{
mel=mel + fName + ", ";
}
}
if (mel==""){
app.execMenuItem("AcroSendMail:SendMail");
}
else
{app.alert("Pflichtfelder nicht angekreuzt! Bitte folgende Checkboxen bestätigen: " + mel);
}
}

Zum Speichern einfach diese Zeile:
Code
app.execMenuItem("AcroSendMail:SendMail"); 

durch diese ersetzen:
Code
app.execMenuItem("Save"); 


Grüße,
Murphy


als Antwort auf: [#430531]

Kontrollkästchen als Pflichtfeld

ninjagame
Beiträge gesamt: 9

18. Jan 2010, 13:17
Beitrag # 3 von 11
Beitrag ID: #430559
Bewertung:
(28341 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Erst mal herzlichen Dank für die Hilfe und Mühe!
Ich habe ein kleines Problem damit. Vielleicht kommt das auch daher, dass ich mein Anliegen nicht klar genug formuliert habe.
Ich bin mir nicht sicher, wo ich das Script einbauen muss. Ich hab es jetzt mal im Dialogfeld "Kontrollkästchen - Eigenschaften" unter dem Reiter "Aktionen" bei "JavaScript ausführen" eingesetzt. Nur kommt nun der Warnhinweis jedes Mal, wenn ich in das Kontrollkästchen klicke, und er fordert mich ausdrücklich auf, jedes bislang existierende Feld zu checken. Das wollte ich ja nicht; ich wollte, dass man beim Speichern bzw. Beenden des Formulars die Meldung bekommt.
Muss ich da vielleicht eine eigene Schaltfläche "Speichern" einrichten?

Vielen Dank und viele Grüße

ninjagame


als Antwort auf: [#430541]

Kontrollkästchen als Pflichtfeld

mk-will
Beiträge gesamt: 1255

18. Jan 2010, 13:57
Beitrag # 4 von 11
Beitrag ID: #430563
Bewertung:
(28324 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo ninjagame,

vielleicht solltest Du nochmal über die Anforderung
Zitat ... sicherstellen, dass alle Kontrollkästchen (checkbox) angekreuzt sind ...

nachdenken.
Oder etwas genauer erklären, worum es eigentlich geht.

Nach meiner Meinung sind Checkboxen dazu da, bestimmte Fragen/Vorschläge anzunehmen.
Bspw. "Wollen Sie unseren Newsletter erhalten? Falls ja, bitte ankreuzen." wird per einzelner Checkbox aktiviert (oder eben nicht).

Jetzt zu definieren, daß alle Checkboxen vor dem Speichern angekreuzt sein müssen, erscheint mit widersinnig.

Gruß
Stephan


als Antwort auf: [#430559]

Kontrollkästchen als Pflichtfeld

ninjagame
Beiträge gesamt: 9

18. Jan 2010, 14:20
Beitrag # 5 von 11
Beitrag ID: #430572
Bewertung:
(28318 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

Du hast völlig recht. Tut mir leid, dass ich so unqualifiziert formuliere - ich bin leider noch ziemlich neu in dem Gebiet.
Das "alle Kontrollkästchen" war natürlich nicht klar genug formuliert.
Also: Ich habe mehrere Textfelder, in die etwas eingetragen werden MUSS.
Außerdem habe ich mehrere Checkboxes. Von diesen sollen einige so ausgelegt sein, dass ich zwischen den Optionen A oder B einerseits auswählen KANN, andererseits aber eben auch eine der beiden Optionen auswählen MUSS. Andere wiederum sollen so ausgelegt sein, dass ich eine oder zwei Optionen auswählen KANN, mindestens aber eine auswählen MUSS.
Nun möchte ich sicherstellen, dass der Benutzer, der das Formular ausfüllt, in alle Textfelder etwas eingetragen und bei den Kontrollkästchen jeweils die entsprechenden Optionen ausgewählt hat. Wenn er das Formular speichern will und noch eine Angabe fehlt, soll er auf diese Tatsache hingewiesen werden.
Ich hoffe, das ist jetzt etwas deutlicher.

Gruß
ninjagame


als Antwort auf: [#430563]

Kontrollkästchen als Pflichtfeld

mk-will
Beiträge gesamt: 1255

18. Jan 2010, 14:31
Beitrag # 6 von 11
Beitrag ID: #430580
Bewertung:
(28312 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo ninjagame,

der Nebel lichtet sich. ;-)

Frage: mit welchem Programm soll das gelöst werden?
Es schreit geradezu nach LiveCycle Designer.

Ich gehe mal davon aus, Daß Du Acrobat nutzt.
Welche Version/OS?

Textfelder: kein Problem

Checkboxen:
Geht nur per JavaScript.
Dafür einen Speichern-Button anlegen, der dann ein JavaScript startet, das alle festgelegten Checkboxen gemäß der Vorgaben (A oder B / 1 oder 2 bzw. 1+2) prüft.

Problem: wird statt des Speichern-Buttons der Menü-Befehl benutzt, läuft die Prüfung ins Leere.

Gruß
Stephan


als Antwort auf: [#430572]

Kontrollkästchen als Pflichtfeld

ninjagame
Beiträge gesamt: 9

18. Jan 2010, 15:03
Beitrag # 7 von 11
Beitrag ID: #430586
Bewertung:
(28294 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

ja, es schreit nach LifeCycle Designer. Davon hab ich hier eine Demo liegen, vor deren Installation ich im Moment noch etwas zurückscheue, da ich nicht weiß, ob ich mich während der Demo-Frist ausgiebig genug damit beschäftigen kann. Die Vollversion kostet Geld; also brauche ich meinem Scheff vorerst gar nicht damit zu kommen.
Ich arbeite am Mac mit Acrobat 8. (LifeCycle Designer würde ich dann auf der Parallels-Partition auf der Windows-Oberfläche installieren. Wäre kein Problem, wenn ich wüsste, wo hinfassen.)
Die Idee mit dem Speichern-Button hatte ich auch schon - mit denselben Bedenken, wie Du sie äußerst. Allerdings würde mich das im Zweifelsfall nicht davon abhalten, den Button einzubauen - ebenso wie einen Button, der das ganze Formular zurücksetzt.
Nun habe ich aber folgendes bemerkt: Wenn ich bei den Textfeldern unter Textfeld-Eigenschaften "erforderlich" checke, bekommt das Feld zwar einen roten Rand - ich bekomme aber immer noch keine Warnung beim Speichern bzw. Beenden, wenn in das Feld nichts eingetragen ist. Was mache ich falsch oder übersehe ich?
Das mit den JavaScripts würde ich wahnsinnig gerne besser können; Schulung steht aber nicht zur Debatte. Wie würde ich das im Fall des "Speichern"-Button anstellen?

Gruß

ninjagame


als Antwort auf: [#430580]

Kontrollkästchen als Pflichtfeld

MurphysLaw
Beiträge gesamt: 588

18. Jan 2010, 15:44
Beitrag # 8 von 11
Beitrag ID: #430594
Bewertung:
(28285 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vorschlag:

1.) Lege dir ein unsichtbares Textfeld an (kein Rahmen, Hintergrund weiß, Schrift weiß), als Startwert (Default value) gibst du die Anzahl deiner Pflichtfelder an.

2.) Ein Mini-JS hinter jeder Checkbox, das - falls das Pflichtfeld gerade aktiviert wurde, den Wert im unsichtbaren Textfeld um 1 erniedrigt

3.) Meinen Schaltflächencode so anpassen, dass lediglich das textfeld geprüft wird. Ist sein Wert = 0, dann sind alle Pflichtkästchen aktiviert.

;-)


als Antwort auf: [#430572]
(Dieser Beitrag wurde von MurphysLaw am 18. Jan 2010, 15:44 geändert)

Kontrollkästchen als Pflichtfeld

mk-will
Beiträge gesamt: 1255

18. Jan 2010, 16:39
Beitrag # 9 von 11
Beitrag ID: #430598
Bewertung:
(28269 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo ninjagame,

bedauerlich, daß Du Acrobat Pro für den Mac hast.
Die Windows-Version hat den Designer dabei ...

Zitat Allerdings würde mich das im Zweifelsfall nicht davon abhalten, den Button einzubauen

Das mußt auch, da es anders nicht lösbar ist.


Zitat Wenn ich bei den Textfeldern unter Textfeld-Eigenschaften "erforderlich" checke, bekommt das Feld zwar einen roten Rand - ich bekomme aber immer noch keine Warnung beim Speichern bzw. Beenden, wenn in das Feld nichts eingetragen ist.

Die Prüfung erfolgt nur, wenn per eigenem Button das Drucken oder das Versenden gestartet wird.
Wenn die Prüfung auch vor einem Speichern erfolgen soll, muß hier ebenfalls ein JavaScript aktiv werden.


Zitat Das mit den JavaScripts würde ich wahnsinnig gerne besser können;

Das mußt Du auch, sonst kommst Du nicht weit.


Zitat Schulung steht aber nicht zur Debatte.

Schlecht.
Alternative: selbst beibringen.

Gruß
Stephan


als Antwort auf: [#430586]

Kontrollkästchen als Pflichtfeld

Max Wyss
Beiträge gesamt: 532

18. Jan 2010, 20:54
Beitrag # 10 von 11
Beitrag ID: #430627
Bewertung:
(28224 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ninjagame,

entgegen anderen Aussagen in diesem Thread ist LiveCycle Designer für diese Anwendung absolut unnötig und kontraproduktiv (mein Kommentar zu den betreffenden Aussagen ist für dieses Forum nicht geeignet).

Das Ganze kann mit Bordmitteln von Acrobat (welche Acrobat JavaScript einschliessen) bewerkstelligt werden. Das heisst im Klartext, dass die Formularfeldwerkzeuge eingesetzt werden (in Acrobat 9 muss hierzu in den Formularerstellungsmodus umgeschaltet werden).


Erst einmal etwas grundsätzliches zu Checkboxen (auf "deutsch" heisst dies Kontrollkästchen) und Radiobuttons:

Hinweis: unter "widgets" verstehe ich hier ein Formularelement, welches ein- oder ausgeschaltet sein kann.

Radiobuttons: Ein Satz von 2 oder mehr widgets, bei denen genau eine der zugehörigen sich gegenseitig ausschliessenden Optionen gewählt werden MUSS. (keine Wahl ist daher ungültig).

Checkboxes: Ein Satz von 1 oder mehr widgets, bei denen genau eine der zugehörigen sich gegenseitig ausschliessenden Optionen gewählt werden KANN. (keine Wahl ist daher gültig). Checkboxen können zudem so angeordnet werden, dass sie eine Gruppe von mehreren voneinander unabhängigen Optionen darstellen. Hier besteht jedoch keine direkte logische Beziehung zwischen den widget-Sätzen.

Das Aussehen der widgets ist in obiger Definition unwichtig.

Der Unterschied ist also einzig darin, dass bei Checkboxen "keine Auswahl" gültig sein darf. Was nun in Frage kommt, hängt von den Resultaten der Formularanalyse ab.

In Acrobat können beide Funktionalitäten mit Checkboxes implementiert werden (das Aussehen kann entsprechend gewählt werden); wenn jedoch "keine Wahl" ungültig ist, kann zum Verringern des Codieraufwandes auf Radiobuttons zurückgegriffen werden. Grundsätzlich gilt dann, dass der Feldname für die widgets eines Satzes gleich ist, sich jedoch deren return value (der Wert, welcher beim Wählen der Option zurückgegeben wird) unterscheidet.

Nun zu den konkreten Fällen.

Fall 1 ist elementar: Checkboxes, 2 widgets mit unterschiedlichem return value. Und das wärs, was die checkboxen angeht.

In Fall 2 sind die verschiedenen Optionen unabhängig voneinander. Das bedeutet, dass für jede Option eine checkbox mit unterschiedlichem Feldnamen gesetzt werden muss. Damit sichergestellt ist, dass mindestens eine Wahl getroffen worden ist, muss diese Ansammlung von checkboxen ausgewertet werden.

Das bringt uns zur Auswertung. Man müsste sich überlegen, ob man nicht besser die Zugänglichkeit der genannten Textfelder über die checkboxen steuern sollte, anstatt die checkboxen über ausgefüllte Textfelder. Der Benutzer müsste dann erst einmal aktiv eine Option anwählen, und dann den Text in das betreffende Feld eingeben. Auch hier hängt es von den Resultaten der Formularanalyse ab, welche Methode zu benutzen ist.

Bei der Auswertung im ersten Fall muss nur kontrolliert werden, ob der Feldwert nicht "nicht gewählt" entspricht. Der Feldwert "nicht gewählt" ist in Acrobat immer und in jedem Fall "Off". Der betreffende Codeabschnitt lautet daher

if (this.getField("myField").value != "Off")

Wenn ja, ist eine Option gewählt, wenn nein, ist keine Option gewählt, und der Benutzer muss daran erinnert werden.

Bei der Auswertung im zweiten Fall muss kontrolliert werden, ob der Feldwert mindestens eines der Felder nicht "Off" ist. Hierbei verwenden wir die OR-Verknüpfung:

if (this.getField("myField1").value != "Off" || this.getField("myField2").value != "Off"...

Damit haben wir die checkbox-Logik abgehandelt.

Für die Anbindung der Felder werten wir in der Textfeld-Priorität (kontrollieren, ob checkbox gewählt, wenn ein Eintrag im zugehörigen Feld) den Wert des Textfelds aus und stellen dann fest, ob der Wert der zugehörigen Checkbox nicht "Off" ist:

if (this.getField("myTextField").value != this.getField("myTextField").defaultValue) {
if (this.getField("myCheckField").value != "Off")

Wenn die Bedingungen erfüllt sind, ist es OK, anderenfalls muss eine Erinnerung ausgegeben werden.

Bei Checkbox-Priorität geht es gerade umgekehrt (und die beiden Codezeilen sind vertauscht). Zusätzlich können wir das Textfeld je nach dem ein-und ausblenden und beim Ausblenden sogar noch zurücksetzen. Weitere Attribut-anpassungen sind zudem auch möglich.


Die Auswertung wird am einfachsten über eine Schaltfläche ausgelöst, welche die gewünschte Aktion auslöst (speichern, drucken, übermitteln), und die Aktion nur startet, wenn sämtliche Auswertungen ein erwünschtes Resultat zeigen.


Wie gesagt, das ganze kann mit den Formularfeldwerkzeugen von Acrobat gemacht werden... und das geht problemlos auf Mac (ich habe diesbezüglich über ein Jahrzehnt Erfahrung).

HTH.


als Antwort auf: [#430572]

Kontrollkästchen als Pflichtfeld

ninjagame
Beiträge gesamt: 9

18. Jan 2010, 22:42
Beitrag # 11 von 11
Beitrag ID: #430634
Bewertung:
(28206 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Max,

ich würde gerne morgen früh noch einmal ausführlicher antworten, wenn ich in der Firma am Rechner sitze und alles nachvollziehen kann; erst mal recht herzlichen Dank für den ausführlichen Beitrag.

ninjagame


als Antwort auf: [#430627]
X

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
14.05.2024

Online
Dienstag, 14. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Prozessoptimierung ist ein Teamsport! Keine Software und keine Maschine allein kann Ihnen helfen, die Effizienzpotenziale Ihres Betriebes maximal auszuschöpfen. Von der Auftragsannahme über die Vorstufe und den Druck bis hin zur Weiterverarbeitung – alles muss optimal ineinandergreifen. Apropos Weiterverarbeitung – in vielen Druckbetrieben fristet sie in Sachen Prozessoptimierung immer noch ein Schattendasein. Dabei liegen hier mittlerweile die größten Einsparpotenziale! In einem Webinar von Horizon und Impressed erfahren Sie, wie Sie diese Einsparungen realisieren können. Horizon, bekannt für innovative Lösungen in der Druckweiterverarbeitung, bietet mit iCE LiNK eine Workflowlösung für die Weiterverarbeitung. iCE LiNK überwacht, visualisiert und analysiert Produktionsabläufe und unterstützt bei der Wartung – damit immer alles reibungslos läuft. Den gleichen Anspruch hat der von Impressed entwickelte Impressed Workflow Server – er ist die smarte PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt. Im Webinar zeigen Ihnen die Experten von Horizon und Impressed, wie beide Lösungen im Team die Effizienz und Produktivität Ihres Betriebes steigern können. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Horizon

https://www.impressed.de/schulung.php?c=sDetail&sid=327

Einsparpotenziale in der Weiterverarbeitung
Veranstaltungen
16.05.2024

Online
Donnerstag, 16. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Nein

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!