struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Bolsover" <struts-u...@bolsover.com>
Subject RE: Validator - how to check a checkbox
Date Tue, 15 Nov 2005 08:25:12 GMT
Hi Laurie

No joy with this I'm afraid..

Using your suggestion, 'date_Shipped' is always required no matter the state
of 'complete'.

date_Shipped is a String.
complete is a boolean.

I had expected that the status of a boolean would be either true or false -
but now I'm not sure - also, I'm not sure how to debug this - without
digging into the validator code.  I assume that the validator does it's
stuff before the ActionForm gets to my Action; returning the user to the
input if validation fails.
 
Any more suggestions?

db


> -----Original Message-----
> From: news [mailto:news@sea.gmane.org] On Behalf Of Laurie Harper
> Sent: 14 November 2005 23:54
> To: user@struts.apache.org
> Subject: Re: Validator - how to check a checkbox
> 
> David Bolsover wrote:
> > Hi all
> > 
> > I've done a deal of searching through the archives, looked at the 
> > examples - even read the docs - I'm still stuggling with this...
> > 
> > I need to validate a number of fields in a from; certain fields are 
> > required if a checkbox is checked and should be empty if 
> the checkbox is not checked.
> > 
> > What is the correct syntax in validator.xml?
> > 
> > 'date_Shipped' must only be populated if the 'complete' 
> checkbox is checked.
> > 
> > As an example of what I have tried....broken...
> > 
> > <field property="date_Shipped" depends="validwhen">  <arg0 
> > key="returns.date_Shipped"/>
> >    <var>
> >     <var-name>test</var-name>
> >     <var-value>(complete == 'on')</var-value>
> >    </var>
> > </field>
> 
> That says date_Shipped is valid *only* when complete has the 
> value 'on'. 
> And since a checkbox field is never going to have the value 
> 'on', date_Shipped isn't ever going to be valid...
> 
> What you want is probably something like
> 
>     (((complete == false) and (*this* == null)) or
>      ((complete == true)  and (*this* != null)))
> 
> I'm not sure if true/false is what you need, or if that needs 
> to be a test for null; it probably depends on the type you've 
> declared for the 'complete' property in your form.
> 
> L.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message