| Text ausgeben |
| Tutorials - Tutorials | |||||||||||||||||||||||||||||||
Text ausgebenAusgabe in ein alert-FensterDie einfachste Art der Ausgabe, die sich speziell auch für die Testphase empfiehlt, ist mit einem Hinweisfenster zu erreichen, das auf dem Bildschirm erscheint und mit einem Mausklick wieder geschlossen werden muß. Es handelt sich eigentlich um eine Methode des Objektes "Window" die aber ausnahmsweise ohne Angabe des Mutterobjektes funktioniert. Also wie geht es? Der Grundbefehl lautet:
Was dieser Befehl bewirkt? Die Frage, wo man die alert-Zeilen eigentlich hinschreibt, ist offen. Hier sind zwei Möglichkeiten angeboten, zuerst die einfachere aber nicht unbedingt sicherere
legt den Button an, den wir brauchen, um ein Ereignis auszulösen. Der Mausklick veranlaßt dann das Schreiben der alert-Box. Im Vergleich zum Grundbefehl haben sich hier nur die Anführungsstriche geändert, weil hier sozusagen zweifach geklammert wurde. Ein Problem ist, daß diese Art des Aufrufes nicht mit allen JavaScript-Elementen und, wie sich herausstellt auch nicht mit Netscape6 funktioniert. Vollständiger und sicherer der zweite Weg. Es wird im <head> ein <script>-Eintrag vorgenommen. Beim erstmaligen Aufruf eines Scripts muß die 'language' angegeben werden. Dann gibt es eine Funktionsdefinition, hier für "Box()". Die lernt der Browser kennen, weil sie beim Laden der Seite von der JavaScript-Konsole gelesen wird er führt sie aber nicht aus, weil das noch nicht von ihm verlangt wird. Diese Funktion können wir überall im Dokument benutzen. Dazu braucht es einen Anlaß, den wir mit dem Button, genauer mit seinem onClick-Ereignis schaffen. Erst dann wird Box() aufgerufen und ausgeführt. Genau sieht die Sache also so aus:
Alert kann Text anzeigen, der auch zusammengestückelt sein kann: "Text1" + "Text2"; es können Funktionen aufgerufen werden, die Strings zurückgeben und Variablenwerte angezeigt werden, dafür ein weiteres Beispiel. Zuvor eine Frage, Sie sind Was hier gezeigt wird, ist ein zusammengestückelter Text für die alert-Box, der außer Textbrocken auch noch Funktionsaufrufe ( jetzt.getHours(),jetzt.getMinutes()) und eine Variable (text) enthält. Der Aufruf wird in Prinzip lauten:
Zunächst wird wieder die Funktion definiert. Die Zeile, die den Text bestimmt, enthält eine Auswahlstruktur, deren geklammerte Bedingung auf die Element "dick" des Formulars "koerper" zugreift. Danach steht für die alert-Box der anzuzeigende Text fest.
Im unteren Formularteil finden Sie die Definition des Formulars koerper, dei beiden Radiobuttons erhalten gleiche Namen, was sie gegeneinander verriegelt. Intern wird ihr Wert checked=true/false in einem Array des Namens dick verwaltet, also linker Knopf in dick[0] rechter Knopf in dick[1]. Der MausKlick auf die Taste, die keinen Namen braucht, löst die Berabeitung der Funktion Zeit() aus. Alles klar? Das Bestätigungsfenster confirmEine Methode des immer vorhandenen Objektes window (das beim Aufruf nicht genannt werden muß) ist confirm. Es öffnet sich ein Fragefenster, das die Auswahl zwischen "OK" und "Abbruch" anbietet. Da hier die Frage frei formulierbar ist, kann das Fenster auch für Mitteilungen genutzt werden. Abhängig von der zum Schließen gedrückten Taste kann dann unterschiedlich reagiert werden.
Die unterschiedlichen Antworten können ausgewertet werden, wenn confirm einer Variablen zugewiesen wird. Diese besitzt nach Schließen des Fensters den Wert false (Abbruch) oder den Wert true (OK). Mehr dazu unter Auswahlstrukturen. Ausgabe in FormularelementeFormular-Elemente sind aus HTML bekannt. Sie können alle mit JavaScript manipuliert werden. Für Ausgaben sind sie eigentlich nicht bestimmt. Allerdings lassen sie sich für diesen Zweck mißbrauchen. Interessant sind dabei die Typen: 'text' und 'textarea'. Die folgenden Regeln des Zugriffs gelten aber auch allgemeiner.
Aufschrift von Formularelementen verändern Probieren geht über Studieren:
Eintrag in einem Textfeld Anzuzeigender Text ist bei 'text' mit der Eigenschaft 'value' verknüpft. Diese kann allerdings vom Nutzer überschrieben werden, weil dies ja der eigentliche Sinn dieses Formularelements ist. Wie könnte es gehen?
Textfeld und Button werden wie üblich angelegt, der Button wertet das Ereignis aus, daß er angeklickt wird. Der neue Text könnte nun von Hand wieder überschrieben und danach einer Variablen zugewiesen werden. Schon das einfache Textfeld eignet sich also für Dialoge zwischen Nutzer und Programm. Eintrag in ein Textarea Im Prinzip genauso erfolgt der Zugriff auf <texarea>. Diese ist zwar ein eigenes Tag, das geöffnet und geschlossen werden muß und einen Container für den Text bildet. Aber der Inhalt heißt wieder value und kann beliebig oft vom Programm geschrieben, vom Nutzer verändert und vom Programm wieder gelesen werden.
Hier wurde dem Formular diesmal ein Name verpaßt, man hätte ohne Schaden auch wieder die interne Zählung, also den auch gültigen Namen forms[5] benutzen können. In die Statusleiste schreibenDie Statusleiste ist unten auf dem Bildschirm, dort, wo der Browser seine Tätigkeitsberichte absetzt. Sie ist eine Eigenschaft des window-Objekts. Ihr kann direkt ein String zugewiesen werden. Allerdings gilt für sie, was auch für die anderen window-Methoden gilt, sie müssen duch Ereignisse ausgelöst werden, die man selber ermöglichen muß. Bei alert ist gezeigt, wie es geht. Der Aufruf, der in eine Funktion einzubauen ist, lautet:
In das Dokument schreibenIhre WWW-Seite ist in Javascript das "document". Auf diesem Text zu erzeugen, ist im Prinzip einfach, aber... mal sehen, welche Fälle denkbar sind.
Jetzt folgt diese Codezeile wirklich -> <- ...und siehe da, es klappt! Natürlich hätte man den Knopf ebenso wie das Script auch weglassen können und den Text einfach nur eintragen.
und was es bewirkt -> <- Wenn der Text in eine Liste oder in eine Tabelle geschrieben werden soll, geht das ganz einfach, die sind nämlich auch nur "document". Der ganze Schreibaufruf wird in die betreffende Struktur eingebaut und schon klappt es (vielleicht).
In ein neues Fenster schreibenJavaScript bietet die Möglichkeit, neue Fenster auf dem Bildschirm des Nutzers zu öffnen. Bei ihrer Verwendung sollte allerdings an den Nutzer gedacht werden, der sie irgendwann wieder schließen muß. Das kann schnell lästig werden.
Es gibt eine Methode von window (sowie von frame), die print() heißt und den Druck des gerade angezeigten Fensterinhalts bewirkt. Leider wird dabei die Seite nicht so gedruckt, wie sie auf dem Bildschirm aussieht. Der Bildaufbau gelingt nicht. Abhilfe um vernünftige Ausdrucke zu produzieren: Anlage druckbarer Seiten in einem speziellen Fenster, das dann gedruckt werden kann. Was dort funktioniert, muß ausprobiert werden.
Erläuterung: Das Beispiel definiert einen Verweis, mit dessen Hilfe der Anwender die Seite ausdrucken kann. Formatierung von auszugebenden TextenBevor längere Texte an ihre Ziele geschickt werden, müssen sie in irgendeiner Weise mit Steuerzeichen für Formatierung, Umbruch, unzulässige Zeichen etc. versehen werden. Welche Möglichkeiten es gibt, zeigt die folgende Tabelle. Es gibt, aus C entlehnt, sog. Escape-Codes dazu. Ihre Namen sind weitgehend selbsterklärend. Sie werden einfach in den Text eingefügt.
Dieses Tutorial wurde bereitgestellt von Prof. Dr. Rolf Hirte, Technische Fachhochschule Wildau. Vielen Dank an dieser Stelle!
Viel Spass beim Lernen und beim Erstellen eigener JavaScripts. Solltet ihr ein nützliches Script entwerfen, von dem ihr meint dass es gut auf diese Seite passen würde, dann sendet es doch einfach ein :-) |

