Mixing Client-Side and Server-Side Code
I touched on the
differences between server-side
code and client-side code in Chapter 3. JSP is a
server-side technology, so all JSP elements such as actions and
scriptlets execute on the server before the resulting page is sent to
the browser. A page can also contain client-side code, such as
JavaScript code or Java applets. This code is executed by the browser
itself. There is no way that a JavaScript event handler such as
onClick or onSelect can
directly invoke a JSP element such as an action, a scriptlet, or a
Java method declared with a JSP declaration.
However, a JSP page can generate JavaScript code dynamically the same way it generates HTML, WML, or any type of text content. Therefore, you can add client-side scripting code to your JSP pages to provide a more interactive user interface. You can also use applets on your pages to provide a more interesting and easier to use interface than what’s possible with pure HTML.
Generating JavaScript Code
Example 12.10 shows a modified version of the User Info page used in the examples in Chapter 5.
Example 12-10. Input Form with Client-Side Validation Code (clientscript.jsp)
<%@ page language="java" contentType="text/html" %><%@ page import="com.ora.jsp.util.*" %><script language="JavaScript"><!-- Hide from browsers without JavaScript supportfunction isValidForm(theForm) {if (isEmpty(theForm.userName.value)) {theForm.userName.focus( );return false;}if (!isValidDate(theForm.birthDate.value)) ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access