ok this works ..
if (((FormComponent)component).isValid() && comp.getConvertedInput() != null) {
tag.getAttributes().put("class", "valid");
}else if (!comp.isValid()){
tag.getAttributes().put("class", "invalid");
}
On 3/24/06, karthik Guru <[EMAIL PROTECTED]> wrote:
> I tried adding it as a separate behaviour. But since the behaviour
> executes during fresh page instantiation, the components show up with
> class attribute value 'valid'. I would rather not have any class
> attribute set on the html element the first time the page is viewed.
>
> component.add(new AbstractBehavior() {
> public void onComponentTag(final Component component,
> final ComponentTag tag) {
> if (((FormComponent)component).isValid()) {
> tag.getAttributes().put("class",
> "valid");
> }else{
> tag.getAttributes().put("class",
> "invalid");
> }
> }
> });
>
> How do i get past this?
>
> On 3/23/06, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> > getMarkupAttributes() is transient, it doesnt live across requests thats why
> > it doesnt show up.
> >
> > your solution is correct, but what i would do is add that as a separate
> > behavior instead of merging it into the ajax behavior.
> >
> > -Igor
> >
> >
> >
> > On 3/23/06, Siddharth Agarwal <[EMAIL PROTECTED]> wrote:
> > >
> > > I add/modify the class attribute through
> > AjaxFormComponentUpdatingBehavior. Is it too late by then?
> > > i ask this since it doesn't show up in the ajax response.
> > >
> > > textField.add(new
> > AjaxFormComponentUpdatingBehavior("onblur") {
> > > @Override
> > > protected void onUpdate(AjaxRequestTarget target) {
> > > if (!getFormComponent().isValid()) {
> > >
> > getFormComponent().getMarkupAttributes().put("class",
> > > "invalid");
> > > }
> > > target.addComponent(getFormComponent());
> > > }
> > >
> > > });
> > >
> > >
> > > But having it onComponentTag works ..
> > >
> > > textField.add(new
> > AjaxFormComponentUpdatingBehavior("onblur") {
> > > @Override
> > > protected void onUpdate(AjaxRequestTarget target) {
> >
> > > target.addComponent(getFormComponent());
> > > }
> > > protected void onComponentTag(final ComponentTag tag){
> > > super.onComponentTag(tag);
> > > if (!getFormComponent().isValid()) {
> > > tag.put("class","invalid");
> > > } else {
> > > tag.put("class","valid");
> > > }
> > > }
> > >
> > > });
> > >
> > >
> > > - Siddharth
> >
> >
>
>
> --
> -- karthik --
>
--
-- karthik --
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0944&bid$1720&dat1642
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user