Re: custom javascript validation (solved)

2004-01-30 Thread Matt Bathje
Hi everybody. After working on this for a bit, I figured it out for myself.
The problem was that in the variable definition, I was using
var-jsTyperegexp/var-jsType. This is wrong - the proper way to do it is
var-jstyperegexp/var-jstype.

Hopefully this will help somebody else out at some point.

Matt Bathje


- Original Message - 
From: Matt Bathje [EMAIL PROTECTED]
To: strutslist [EMAIL PROTECTED]
Sent: Wednesday, January 28, 2004 12:44 PM
Subject: custom javascript validation


 Hi all.

 I am doing some custom validations, and the server side of them is working
 well. The problem is that in my custom javascript, I cannot get a variable
I
 have defined as a regular expression to work. The javascript always pulls
 out the backslashes (\) from the regexp. If I put in the regular
expression
 with double backslashes, it works for javascript, but breaks in the java
 end. Plus I would really like to not have to use nonstandard regexps.

 I am using the mask validator as my guide, and it seems the big difference
 is when the validation function is created, in mask the regexp variables
 get created as regular expressions, where as in my validator they get
 created as strings. For example, here is the created mask function:

 function mask () {
   this.a0 = new Array(phone, Phone Number is invalid., new Function
 (varName,

this.mask=/^(^\\([2-9]\\d{2}\\)\\s*\\d{3}-\\d{4}$)|(^[2-9]\\d{2}-\\d{3}-\\d{
 4}$)$/; return this[varName];));
 }

 and here is my function:
 function countryMask () {
   this.a0 = new Array(postalCode, Postal Code is invalid., new
Function
 (varName,

this.CAN='^([ABCEGHJKLMNPRSTVXYabceghjklmnprstvxy]\\d[A-Za-z]\\s*\\d[A-Za-z
 ]\\d)$'; this.otherField='countryID';
 this.USA='^(^\\d{5}$)|(^\\d{5}-\\d{4}$)$'; return this[varName];));
 }


 See how in the mask function this.mask is set to a regular expression - no
 quotes around it? But in my function, this.USA and this.CAN are both
created
 as strings with quotes around them (and no regexp demarkers (/))

 Also, notice that at this point this.USA and this.CAN both have the
slashes
 in them as needed. But, in my validation script when I do var pattern =
 oCountryMask[x][2](CAN);, pattern does not contain the slashes.

 What I am looking for is either a way to call oCountryMask[x][2](CAN) and
 have it not strip the slashes, OR (and even better) have the var treated
as
 a regexp like the mask variable is.

 Obviously the mask variable for a mask validation is a special variable
 that gets treated as a regexp - but is there any way to set the
javascript
 type of the variable in my validation?

 I was poking around in the validator javadocs and found
 var-jsTyperegexp/var-jsType looks like it may do something, but it
 unfortunatley does not solve my problem. I'm wondering if maybe it isn't
 implemented yet or something?

 I have really been able to find anybody else mentioning similar problems.
:(

 Any help to get this working would be greatly appreciated!!!

 Thanks,
 Matt Bathje

 ps - anybody have any knowledge about these three questions that were
never
 answered?

http://nagoya.apache.org/eyebrowse/[EMAIL PROTECTED]msgId=1327188

http://nagoya.apache.org/eyebrowse/[EMAIL PROTECTED]msgId=1328405

http://nagoya.apache.org/eyebrowse/[EMAIL PROTECTED]msgId=1328406


 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



custom javascript validation

2004-01-28 Thread Matt Bathje
Hi all.

I am doing some custom validations, and the server side of them is working
well. The problem is that in my custom javascript, I cannot get a variable I
have defined as a regular expression to work. The javascript always pulls
out the backslashes (\) from the regexp. If I put in the regular expression
with double backslashes, it works for javascript, but breaks in the java
end. Plus I would really like to not have to use nonstandard regexps.

I am using the mask validator as my guide, and it seems the big difference
is when the validation function is created, in mask the regexp variables
get created as regular expressions, where as in my validator they get
created as strings. For example, here is the created mask function:

function mask () {
  this.a0 = new Array(phone, Phone Number is invalid., new Function
(varName,
this.mask=/^(^\\([2-9]\\d{2}\\)\\s*\\d{3}-\\d{4}$)|(^[2-9]\\d{2}-\\d{3}-\\d{
4}$)$/; return this[varName];));
}

and here is my function:
function countryMask () {
  this.a0 = new Array(postalCode, Postal Code is invalid., new Function
(varName,
this.CAN='^([ABCEGHJKLMNPRSTVXYabceghjklmnprstvxy]\\d[A-Za-z]\\s*\\d[A-Za-z
]\\d)$'; this.otherField='countryID';
this.USA='^(^\\d{5}$)|(^\\d{5}-\\d{4}$)$'; return this[varName];));
}


See how in the mask function this.mask is set to a regular expression - no
quotes around it? But in my function, this.USA and this.CAN are both created
as strings with quotes around them (and no regexp demarkers (/))

Also, notice that at this point this.USA and this.CAN both have the slashes
in them as needed. But, in my validation script when I do var pattern =
oCountryMask[x][2](CAN);, pattern does not contain the slashes.

What I am looking for is either a way to call oCountryMask[x][2](CAN) and
have it not strip the slashes, OR (and even better) have the var treated as
a regexp like the mask variable is.

Obviously the mask variable for a mask validation is a special variable
that gets treated as a regexp - but is there any way to set the javascript
type of the variable in my validation?

I was poking around in the validator javadocs and found
var-jsTyperegexp/var-jsType looks like it may do something, but it
unfortunatley does not solve my problem. I'm wondering if maybe it isn't
implemented yet or something?

I have really been able to find anybody else mentioning similar problems. :(

Any help to get this working would be greatly appreciated!!!

Thanks,
Matt Bathje

ps - anybody have any knowledge about these three questions that were never
answered?
http://nagoya.apache.org/eyebrowse/[EMAIL PROTECTED]msgId=1327188
http://nagoya.apache.org/eyebrowse/[EMAIL PROTECTED]msgId=1328405
http://nagoya.apache.org/eyebrowse/[EMAIL PROTECTED]msgId=1328406


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]