Seite 1 von 1

JavaScriptCode editieren

Verfasst: 21.08.2007, 10:04
von Heiko
Hallo zusammen
kann mir jemand sagen wie man zu einem Formularfeld JavaScriptCode durch ein JS editieren kann?
JS soll dann durch MouseUp ausgelöst werden.
Gruß Heiko

JavaScriptCode editieren

Verfasst: 21.08.2007, 11:09
von Heiko
Hab was...

Mit der Funktion setAction kann man einem Formularfeld über JS eine Aktion und JS zuweisen.

Code: Alles auswählen

f.setAction("MouseUp", "app.alert('Hallo')")
Das einzige Problem was ich jetzt habe ist, das mein JS mehrere Zeilen hat. Die Funktion erwartet aber den Code als String also in Anfüfrungszeichen. Ich weiß jetzt nicht wie ich mehere Zeilen in Anführungszeichen ausweisen soll. Natürlich könnte ich den Code ohne Absätze schreiben, das funktioniert auch, nur kann man natürlich dann nicht mehr nachvollziehen wie das Script funktioniert.

Hoffe jemand kann mir nen Tipp geben.

Gruß Heiko

JavaScriptCode editieren

Verfasst: 02.10.2007, 19:29
von acronaut
Hi Heiko,

Du bist echt Klasse, jedes Mal, wenn ich dazu komme das Forum durchzusehen, hast Du Dir die meisten deiner Fragen schon selbst beantwortet. Finde ich übrigens super, dass du das dann auch tatsächlich reinstellst. Danke dafür schon mal.

Das Thema, das Du hier beschreibst hatte ich leider noch nie, muss aber auch sagen, dass ich es nicht ganz verstanden habe.

Ich versuchs mal selbst nochmal zu formulieren:

1. Du hast ein Formularfeld
2. Du möchtest diesem Feld über einen Button ein JavaScript zuweisen?
3. Warum?

Gruß,
Andi


JavaScriptCode editieren

Verfasst: 04.10.2007, 09:34
von Heiko
Nicht über einen Button, sondern über einen Menübefehl.
Also ich hab mit einem JS (configJS) die Möglichkeit denn Erstellungsprozess von 3DPDFs zu lenken. Der Ersteller hat dann zum Beispiel einen Menübefehl der automatisiert allle Formularfelder (sammt Position, Größe, JS) erstellt.
Deshalb der ganze Aufwand :)
Gruß Heiko

JavaScriptCode editieren

Verfasst: 09.10.2007, 21:29
von acronaut
Oh, hossa. Mit Plugins, bzw. der Konfiguration von Menubefehlen hab ich mich noch gar nicht richtig beschäftigt mussich sagen. Aber wär es nicht möglich das Ganze irgendwie in ein Array zu verpacken und dann das Array rüber zu schieben?

Gruß,
Andi


JavaScriptCode editieren

Verfasst: 14.10.2007, 16:43
von spongebob
Wir hatten das gleiche Problem. Brauchten auf jeder Seite eines ca. 1000 Seitigen PDFs, Schaltflächen mit unterschiedlichen JScripts.

Also Du kannst doch in den Anführungsstrichen wo sich das "app.alert('Hallo')" befindet mehrere Befehle, mit Semikolon getrennt, eintragen.

hier:
-----------------------------------------------------------------------------------------
[fontsize=1]f.setAction("MouseUp", "app.alert('So ist es und so bleibt es ...'); app.alert('... in engen Hosen reibt es!');" );[/fontsize]
-----------------------------------------------------------------------------------------

... aber das meintest Du mit 'Code ohne Absätze schreiben', oder?
Die Frage ist, wo der Code leserlich sein soll: im JS was den Befehl in das 'setAction' schreibt, oder in dem damit erstellten Code im Feld/Button. Zweiteres könntest Du evtl. damit lösen, das Du ein \n für neue Zeile (Escape-Sequence) vor jede neue Zeile schreibst.

wie hier ...:
-----------------------------------------------------------------------------------------
[fontsize=1]f.setAction("MouseUp", "app.alert('So ist es und so bleibt es ...'); \napp.alert('... in engen Hosen reibt es!');" );[/fontsize]
-----------------------------------------------------------------------------------------

Könnte mir vorstellen, das man den ganzen Befehl wegen der Übersichtlichkeit auch in eine Stringvariable schreiben und einfach einsetzen kann.

zB:
-----------------------------------------------------------------------------------------
[fontsize=1]var befehl = [/fontsize][fontsize=1]"app.alert('So ist es und so bleibt es ...'); [/fontsize][fontsize=1]\n[/fontsize][fontsize=1]app.alert('... in engen Hosen reibt es!');"

[/fontsize][fontsize=1]f.setAction("MouseUp", befehl )[/fontsize][fontsize=1]
[/fontsize][fontsize=1][/fontsize]-----------------------------------------------------------------------------------------
[fontsize=1]

[/fontsize]Aber das hab ich alles nicht probiert.  Übernehme alse keine Garantie für die Richtigkeit :-)

[fontsize=1][fontsize=2]Hoffe hab das Problem richtig verstanden und wenigstens ein bischen geholfen zu haben.

Gruß Spongebob
[/fontsize][/fontsize]

JavaScriptCode editieren

Verfasst: 15.10.2007, 08:33
von Heiko
@Spongebob
Das Problem war, dass das JS in einem String eingegeben werden mus. Würde ich das JS mit Absätzen eingeben, dann würde es nicht als String angenommen. Möchte aber eigentlich, dass in meinem Formularfeld ein übersichtliches JS hinterlegt ist.  Hab das mit /n noch nicht gekannt, aber wenn ich dadurch einen Absatz zuweisenkann, sollte das mein Problem lösen.
Danke für deine Unterstützung!
Gruß Heiko