<form name="LoginForm">
<field property="userName" depends="required">
<arg key="LoginForm.userName"/>
</field>
<field property="password" depends="required,minlength">
<arg0 key="LoginForm.password"/>
<arg1 key="${var:minlength}" name="minlength" resource="false"/>
<var>
<var-name>minlength</var-name>
<var-value>6</var-value>
</var>
</field>
</form>
To enable client-side validation you have to place the Struts HTML Tag Library's javascript tag in each jsp page for which you need to preform client-side validation.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JS Validation</title>
</head>
<body>
<html:form action="/Login" onsubmit="validateLoginForm(this);">>
<html:javascript formName="LoginForm" />
User Name : <html:text name="LoginForm" property="userName" /> <br>
Password : <html:password name="LoginForm" property="password" /> <br>
<html:submit value="Login" />
</html:form>
</body>
</html>
The formName property of the javascript tag hold the name of the form specified in the validation.xml file.
Next step is to specify the onsubmit attribute of the HTML Tag Library's form tag. The onsubmit attribute is used to specify the javascript code that should be executed when the form is submitted.
The name of the validate method generated by the javascipt tag is formed by concatenating "validate" with the name of the form specified in the javascript. For example, our form name is "LoginForm" so the generated method name will be "validateLoginForm". If the form name is "loginForm", the generated method name will be "validateLoginForm"
Run the application. The login.jsp page will be displayed. Click the login button without entering the User Name and the Passowrd. The following error messages will be displayed to the user. By using the client-side javascript validation we can display the error messages on the alert box, instead of displaying it on the web page.
Enter only the user name and click the Login button. The following error message will be displayed.
Enter a User Name and a Password less than six characters. The following error message will be displayed.
Enter the User Name as "eswar" and a Password greater than six characters. The following success page will be displayed.
You can download the source code of the Struts Javascript validation example by clicking on the Download link below.
|