|
jsp-develop.de presents: JSP & JavaScript |
| von shark, 20.10.2001 21:01:43 |
|
JavaScript bietet viele Funktionen, die das Entwickeln von Web-Anwendungen vereinfachen. Die Kombination von JSP + JavaScript bringt häufig folgende Fragestellung ans Tageslicht: Wie kann man JSP-Variablen im JavaScript-Code ansprechen? Die Antwort auf diese Frage ist nicht trivial. JSP-Seiten werden auf dem Server ausgeführt, JavaScript hingegen wird auf dem Client im Browser ausgeführt. Client und Server können Informationen nur über HTTP-Parameter und erzeugte Web-Seiten austauschen. Es besteht aufgrund dieser Restriktionen keine Möglichkeit JSP-Methoden und Attribute direkt im JavaScript Code anzusprechen! Die einzige Möglichkeit in diesem Kontext ist: Daten in die Web-Seite zu schreiben und über JavaScript zuzugreifen. Für diesen Fall verwendet man die "<%= %>" Tags, um die Daten in die Web-Seite zu schreiben und um auf dem Client die Daten mit JavaScript zu verarbeiten. Beispiel einer JSP-Seite die mit JavaScript angereichert ist: <%@page language="java" contentType="text/html"%> <html> <head> <% // JSP-Variable definieren und Text zuweisen String strText = "Some Text"; %> <script language="javascript"> <!-- JavaScript Code fuer Browser, die kein Scripting unterstuetzen ausblenden // JSP-Variable der JavaScript-Variablen zuweisen var jsText = "<%=strText%>"; // JavaScript Funktion zum Anzeigen des Textes function showText() { alert("Text: " + jsText); } // Ende der JavaScript Sektion --> </script> /head> <body onload = "showText()"> </body> </html> Verwendet man JavaScript in JSP- bzw. HTML-Seiten, sollte man beachten, das Benutzer im Browser die Ausführung von JavaScript unterbinden können. Man sollte deshalb in seiner JSP-Seite prüfen, ob der Browser JavaScript unterstützt und wenn nicht, das Problem auf dem Server lösen. Alternativ kann man durch HTML-Kommentare auch den JavaScript Code einfach ausblenden. Für Funktionen, die nicht unbedingt benötigt werden, macht das durchaus Sinn. Um den JavaScript Code auszublenden umschliesst man diesen nach dem <script> Tag mit einem HTML-Kommentar (siehe Beispiel). Der Browser ignoriert im Falle der Unterstützung von JavaScript den HTML-Kommentar nach dem <script> Tag und führt den JavaScript Code aus. Wird JavaScript nicht unterstützt, ignoriert der Browser den mit dem HTML-Kommentar umschlossenen JavaScript Code. |
|
URL dieses Beitrags: http://www.jsp-develop.de/forumbeitrag/view/271/ |