On 3/9/08, James Carman <[EMAIL PROTECTED]> wrote:
> On 3/9/08, Warren <[EMAIL PROTECTED]> wrote:
> > WebMarkupContainer bodyTag = new WebMarkupContainer("bodyTag");
> > bodyTag.add(new SimpleAttributeModifier("onload",
> > "form.username.focus();"));
>
>
> Ok, but wouldn't it be cooler/easier/more java-oriented to do:
>
> TextField userName = new TextField("userName");
> userName.addBehavior(new DefaultFocusBehavior());
>
> or
>
> Behaviors.defaultFocus(userName); // Assuming Behaviors existed.
>
>
How about something like:
public class DefaultFocusBehavior extends AbstractBehavior
{
private Component component;
public void bind( Component component )
{
this.component = component;
component.setOutputMarkupId(true);
}
public void renderHead( IHeaderResponse iHeaderResponse )
{
super.renderHead(iHeaderResponse);
iHeaderResponse.renderOnLoadJavascript("document.getElementById('"
+ component.getMarkupId() + "').focus();");
}
}
> >
> >
> > > -----Original Message-----
> > > From: [EMAIL PROTECTED]
> > > [mailto:[EMAIL PROTECTED] Behalf Of James Carman
> > > Sent: Sunday, March 09, 2008 7:58 AM
> > > To: [email protected]
> > > Subject: Default Focus Behavior?
> > >
> > >
> > > Is there a behavior (or some other way) for having a field receive the
> > > focus when the page loads? For instance, in a login form, you'd want
> > > the focus to go to the username field or perhaps the password field if
> > > you've got "remember me" turned on.
> > >
> >
> > > ---------------------------------------------------------------------
> > > 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]
> >
> >
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]