Author Login
Post Reply
Hi ,
I am using struts2.
I'm tying to use the validation framework to do client validations and
server validations.But there was a problem.
I want to check if the password and the confirm-password are same,when the
user submit the form.But this check was only executed at the server side
,client side can't check it.
The below is my configuration of validation.
---------------------------------------------------------------
<validators>
<field name="login">
<field-validator type="requiredstring">
<message>userid is required</message>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<message>password is required</message>
</field-validator>
</field>
<field name="password2">
<field-validator type="requiredstring">
<message>confirm password is required</message>
</field-validator>
<field-validator type="fieldexpression">
<param name="expression">(password2 eq password)</param>
<message>error</message>
</field-validator>
</field>
</validators>
-----------------------------------------------------------------
and the below is the auto-generated Javascript code.
------------------------------------------------------------------------------
var errors = false;
// field name: login
// validator name: requiredstring
if (form.elements['login']) {
field = form.elements['login'];
var error = "userid is required";
if (field.value != null && (field.value == "" ||
field.value.replace(/^\s+|\s+$/g,"").length == 0)) {
addError(field, error);
errors = true;
}
}
// field name: password
// validator name: requiredstring
if (form.elements['password']) {
field = form.elements['password'];
var error = "password is required";
if (field.value != null && (field.value == "" ||
field.value.replace(/^\s+|\s+$/g,"").length == 0)) {
addError(field, error);
errors = true;
}
}
// field name: password2
// validator name: requiredstring
if (form.elements['password2']) {
field = form.elements['password2'];
var error = "confirm password is required";
if (field.value != null && (field.value == "" ||
field.value.replace(/^\s+|\s+$/g,"").length == 0)) {
addError(field, error);
errors = true;
}
}
// field name: password2
// validator name: fieldexpression
if (form.elements['password2']) {
field = form.elements['password2'];
var error = " error";
}
return !errors;
--------------------------------------------------------------
from the javascript source , I find that it's well working with the
validation code of other checks ,except the "fieldexpression".
Any help?
My English is not very well,but if you can understand what i wrote ,i will
be very happy. :- )
Thanks,
Hou Caoyu