dgraham 2002/12/08 21:23:44
Modified: conf/share validator-rules.xml
Log:
Fixed validateRequired, validateShort, validateInteger for PR # 7353.
Revision Changes Path
1.20 +76 -34 jakarta-struts/conf/share/validator-rules.xml
Index: validator-rules.xml
===================================================================
RCS file: /home/cvs/jakarta-struts/conf/share/validator-rules.xml,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- validator-rules.xml 9 Dec 2002 05:06:02 -0000 1.19
+++ validator-rules.xml 9 Dec 2002 05:23:44 -0000 1.20
@@ -61,17 +61,31 @@
var fields = new Array();
oRequired = new required();
for (x in oRequired) {
- if ((form[oRequired[x][0]].type == 'text' ||
- form[oRequired[x][0]].type == 'textarea' ||
- form[oRequired[x][0]].type == 'select-one' ||
- form[oRequired[x][0]].type == 'radio' ||
- form[oRequired[x][0]].type == 'password') &&
- (form[oRequired[x][0]].value == '')) {
- if (i == 0) {
- focusField = form[oRequired[x][0]];
+ var field = form[oRequired[x][0]];
+
+ if (field.type == 'text' ||
+ field.type == 'textarea' ||
+ field.type == 'select-one' ||
+ field.type == 'radio' ||
+ field.type == 'password') {
+
+ var value;
+ // get field's value
+ if (field.type == "select-one") {
+ var si = field.selectedIndex;
+ value =
field.options[si].value;
+ } else {
+ value = field.value;
+ }
+
+ if (value == '') {
+
+ if (i == 0) {
+ focusField = field;
+ }
+ fields[i++] = oRequired[x][1];
+ bValid = false;
}
- fields[i++] = oRequired[x][1];
- bValid = false;
}
}
if (fields.length > 0) {
@@ -312,18 +326,32 @@
var fields = new Array();
oShort = new ShortValidations();
for (x in oShort) {
- if ((form[oShort[x][0]].type == 'text' ||
- form[oShort[x][0]].type == 'textarea' ||
- form[oShort[x][0]].type == 'select-one' ||
- form[oShort[x][0]].type == 'radio') &&
- (form[oShort[x][0]].value.length > 0)) {
- var iValue = parseInt(form[oShort[x][0]].value);
- if (isNaN(iValue) || !(iValue >= -32768 && iValue <=
32767)) {
- if (i == 0) {
- focusField = form[oShort[x][0]];
- }
- fields[i++] = oShort[x][1];
- bValid = false;
+ var field = form[oShort[x][0]];
+
+ if (field.type == 'text' ||
+ field.type == 'textarea' ||
+ field.type == 'select-one' ||
+ field.type == 'radio') {
+
+ var value;
+ // get field's value
+ if (field.type == "select-one") {
+ var si = field.selectedIndex;
+ value =
field.options[si].value;
+ } else {
+ value = field.value;
+ }
+
+ if (value.length > 0) {
+
+ var iValue = parseInt(value);
+ if (isNaN(iValue) || !(iValue >= -32768 && iValue <=
32767)) {
+ if (i == 0) {
+ focusField = field;
+ }
+ fields[i++] = oShort[x][1];
+ bValid = false;
+ }
}
}
}
@@ -358,18 +386,32 @@
var fields = new Array();
oInteger = new IntegerValidations();
for (x in oInteger) {
- if ((form[oInteger[x][0]].type == 'text' ||
- form[oInteger[x][0]].type == 'textarea' ||
- form[oInteger[x][0]].type == 'select-one' ||
- form[oInteger[x][0]].type == 'radio') &&
- (form[oInteger[x][0]].value.length > 0)) {
- var iValue = parseInt(form[oInteger[x][0]].value);
- if (isNaN(iValue) || !(iValue >= -2147483648 && iValue <=
2147483647)) {
- if (i == 0) {
- focusField = form[oInteger[x][0]];
- }
- fields[i++] = oInteger[x][1];
- bValid = false;
+ var field = form[oInteger[x][0]];
+
+ if (field.type == 'text' ||
+ field.type == 'textarea' ||
+ field.type == 'select-one' ||
+ field.type == 'radio') {
+
+ var value;
+ // get field's value
+ if (field.type == "select-one") {
+ var si = field.selectedIndex;
+ value =
field.options[si].value;
+ } else {
+ value = field.value;
+ }
+
+ if (value.length > 0) {
+
+ var iValue = parseInt(value);
+ if (isNaN(iValue) || !(iValue >= -2147483648 && iValue
<= 2147483647)) {
+ if (i == 0) {
+ focusField = field;
+ }
+ fields[i++] = oInteger[x][1];
+ bValid = false;
+ }
}
}
}
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
