Yes, this is risky. Why not add the appropriate onclick handler via JS on
the client side? i.e., you could output javascript (jQuery in this example)
that says:
$('#myTableID tr').click(function() {
// do whatever your onclick should do
});
That's just another option - not necessarily the best way either.
--
Jeremy Thomerson
http://www.wickettraining.com
2010/4/15 Warren Bell <[email protected]>
> I ended up doing it in bind of the behavior and it works fine. I just have
> to remember to add the behavior to the page after all the other components.
> Thanks
>
>
>
> I assume you were trying this in beforeRender of your behaviour, which
> as you say is too late.
> If you really need to use a behaviour encapsulate all this, try
> something like the following, but some may feel its a little
> politically incorrect to do this in bind.
> class MyBehaviour extends AbstractBehavior{
> @Override
> public void bind(Component component) {
> if(!(component instanceof MarkupContainer)){
> throw new RuntimeException("contaıners only please");
> }
> visitChildren(new IVisitor<Component>(){
> @Override
> public Object component(Component component) {
> component.add(new SimpleAttributeModifier("class","goodChild"));
> return IVisitor.CONTINUE_TRAVERSAL;
> }
> });
> }
> }
>
> Regards - Cemal
> jWeekend
> OO & Java Technologies, Wicket
> Consulting, Development, Training
> http://jWeekend.com
>
>
> On 15 April 2010 20:17, Warren Bell <[email protected]> wrote:
> > > I have that figured out, I just don't know how to add the attribute to
> each
> > > component. I can't add a behavior, since "Cannot modify component
> hierarchy
> > > after render phase has started (page version cant change then anymore)"
> Can
> > > I even do this in a behavior?
> > >
> > > Cemal Bayramoglu wrote:
> >> >>
> >> >> Warren,
> >> >>
> >> >> See MarkupContainer#visitChildren
> >> >>
> >> >> Regards - Cemal
> >> >> jWeekend
> >> >> OO & Java Technologies, Wicket
> >> >> Consulting, Development, Training
> >> >> http://jWeekend.com
> >> >>
> >> >> On 15 April 2010 18:44, Warren Bell <[email protected]>
> wrote:
> >> >>
> >>> >>>
> >>> >>> Is there a way to add attributes to child components in a behavior
> that
> >>> >>> is added to a page? I want to create a behavior that is added to a
> page
> >>> >>> that adds some js to the header and then adds some js in an onfocus
> >>> >>> attribute of each child form component on the page. I have the list
> of
> >>> >>> child form components, but can't figure out how to add the
> attribute to
> >>> >>> the components.
> >>> >>>
> >>> >>> Warren
> >>> >>>
> >>> >>>
> >> >>
> >> >> ---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail: [email protected]
> >> >> For additional commands, e-mail: [email protected]
> >> >>
> >> >>
> > >
> > >
> > > --
> > > Thanks,
> > >
> > > Warren Bell
> > >
> > >
> > > ---------------------------------------------------------------------
> > > 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]
>
>
>