Thanks Jeremy, that info is very usefull
2010/4/6 Jeremy Thomerson <[email protected]>
> No - I mean use jQuery, YUI, or whatever you are currently using (or custom
> JS that you write without one of these frameworks), and just add a CSS
> class
> to the dom element on the client-side. There is no reason to make a
> roundtrip to the server to simply change the CSS class. That wastes time
> and resources, and makes the app less responsive.
>
> Do something (jQuery code) like
> onfocus="$(this).parent().addClass('highlightedfield');" to get started,
> then onblur="$(this).parent().removeClass('highlightedfield');"
>
> --
> Jeremy Thomerson
> http://www.wickettraining.com
>
>
>
> On Tue, Apr 6, 2010 at 3:02 PM, Daniela Valero
> <[email protected]>wrote:
>
> > Hi Jeremy, I'm doing something similar than Araun, but with
> >
> > item.add(new AjaxEventBehavior("onclick") {
> > @Override
> > protected void onEvent(AjaxRequestTarget target) {
> > HighLitableDataItem<ThirdModelBasic> hitem =
> > (HighLitableDataItem<ThirdModelBasic>)item;
> > hitem.toggleHighlite();
> >
> > target.addComponent(item);
> >
> > }
> > });
> >
> >
> > But, when I click the item, it Highlites a few seconds, then turns back
> its
> > normal style.
> >
> > Is that because you suggest do not do it with ajax?
> > Is there a way to do this, without rendering all page?
> > When you said "JS library and attach to onfocus.". Do you reference
> > JSLibrarie inside wicketStuff trunk?
> >
> > 2010/4/6 Jeremy Thomerson <[email protected]>
> >
> > > Don't do this with AJAX - that's overkill. Just use a JS library and
> > > attach
> > > to onfocus.
> > >
> > > --
> > > Jeremy Thomerson
> > > http://www.wickettraining.com
> > >
> > >
> > >
> > > On Tue, Apr 6, 2010 at 1:21 PM, Arnaud Garcia <[email protected]
> > > >wrote:
> > >
> > > > ok, find, so just do:
> > > > item.setOutputMarkupPlaceholderTag(true);
> > > > and
> > > >
> > > > myTextField.add(new AjaxEventBehavior("onfocus") {
> > > >
> > > > @Override
> > > > protected void onEvent(AjaxRequestTarget target)
> > > > {
> > > > item.add(new SimpleAttributeModifier("class",
> > > > "selected"));
> > > > target.addComponent(item);
> > > > }
> > > > });
> > > >
> > > >
> > > > Arnaud
> > > > 2010/4/6 Arnaud Garcia <[email protected]>
> > > >
> > > > > Hello,
> > > > >
> > > > > I have a simple DataView where each row has some labels and
> > textfields.
> > > > > Each time the user enter in a textfield I would like to highlight
> the
> > > > > selected row. (The idea is to adapt the wicket stuff example
> > > > (OIRPage.java)
> > > > > with an AjaxFormComponentUpdatingBehavior("onfocus") instead of a
> > > simple
> > > > > Link)
> > > > >
> > > > >
> > > > > The example in wicket stuff
> > > > > (
> > > > >
> > > >
> > >
> >
> http://wicketstuff.org/wicket/repeater/?wicket:bookmarkablePage=:org.apache.wicket.examples.repeater.OIRPage
> > > > > )
> > > > >
> > > > > shows how to highlight the selected row using
> > > ReuseIfModelsEqualStrategy
> > > > > when the user click on a Link.
> > > > >
> > > > > Using the AjaxFormComponentUpdatingBehavior with the "onfocus"
> event
> > I
> > > > try
> > > > > to simulate the Link click but it does not work...
> > > > >
> > > > > myTextField.add(new AjaxFormComponentUpdatingBehavior("onfocus") {
> > > > >
> > > > > @Override
> > > > > protected void onUpdate(AjaxRequestTarget
> target)
> > {
> > > > > HighlitableDataItem<EtudiantAS> hitem =
> > > > > (HighlitableDataItem<EtudiantAS>) item;
> > > > > hitem.toggleHighlite();
> > > > > // target.addComponent( ??? don' know what
> to
> > > put
> > > > > here, how to re-render the item)
> > > > >
> > > > > }
> > > > > });
> > > > >
> > > > >
> > > > > Well, any idea
> > > > >
> > > > > thanks
> > > > >
> > > > > Arnaud
> > > > >
> > > >
> > >
> >
> >
> >
> > --
> > | Daniela Valero
> >
> > "No hay vientos favorables para quien no sabe a donde quiere ir!
> >
>
--
| Daniela Valero
"No hay vientos favorables para quien no sabe a donde quiere ir!