You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by "Kote, Nijaguna Sangankal" <ni...@hp.com> on 2004/07/02 08:37:46 UTC
Javascript error in struts validator.
Hi All,
I had posted this question, but got now answer. Please give me
some hints on this.
I am getting javascript error when I click on submit to validate
my form.
It's a simple login page with username and password.
here is the code for login.jsp
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%
response.setHeader("pragma", "no-cache");
response.setHeader("Cache-control", "no-cache, no-store");
response.setHeader("Expires", "0");
%>
<html:html locale="true">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
<link href="../css/asianet.css" type=text/css rel=stylesheet>
<title><bean:message key="title.login"/></title>
<html:javascript formName="loginForm"/> - This is how I am
including the Javascript for validation.
</head>
........................................... Rest body code goes here.
</html:html>
This is my validation.xml file
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules
Configuration 1.1//EN"
"http://jakarta.apache.org/commons/dtds/validator_1_1.dtd">
<form-validation>
<formset>
<form name="loginForm">
<field property="j_username"
depends="required">
<arg0 key="prompt.userid"/>
</field>
<field property="j_password"
depends="required">
<arg0 key="prompt.password"/>
</field>
</form>
</formset>
</form-validation>
And validation-rules.xml file
<form-validation>
<global>
<validator name="required"
classname="org.apache.struts.validator.FieldChecks"
method="validateRequired"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionErrors,
javax.servlet.http.HttpServletRequest"
msg="errors.required">
<javascript><![CDATA[
function validateRequired(form) {
var isValid = true;
var focusField = null;
var i = 0;
var fields = new Array();
oRequired = new required(); //-> here is the error.
for (x in oRequired) {
var field = form[oRequired[x][0]];
if (field.type == 'text' ||
field.type == 'textarea' ||
field.type == 'file' ||
field.type == 'select-one' ||
field.type == 'radio' ||
field.type == 'password') {
.............................. Rest
Now when I load my jsp, struts generates javascript with
validateLoginForm( document.loginForm )mehtod.
But, when I click on submit button. I get javascript error saying
"required is undefined" and it points to the above bold line in
Validation-rules.xml file.
I am not able to figure out why, any ideas or hints on this would help
me a lot.
Thanks
Guna