Igor, Here's the generated source: <tr> <td align="left"><label wicket:id="password-label" for="userId2">Password</label></td> <td>* <input value="" maxlength="256" type="password" wicket:id="password" name="password"/></td> </tr> And here's the Java code: TextField passField = new PasswordTextField("password", new PropertyModel(this, "password")); passField.add(new MandatoryBehavior()); form.add(passField);
The mandatory behavior is what I showed before. I will check and see the ComponentBorder ... Daan, thanks for a very useful link. But it's more on how to handle the error message. Which is cool I will use it. Ryan, Do you have a behavior / component that adds a special mark to mandatory fields. As I understood the shinyform code, it's more on how to traverse all form components. Thanks On Tue, Sep 16, 2008 at 6:05 PM, Daan van Etten <[EMAIL PROTECTED]> wrote: > Or you can check my solution here: > http://stuq.nl/weblog/2008-09-03/user-friendly-form-validation-with-wicket > > Example form: > http://stuq.nl/media/image/form-usability-tutorial-invalid.png > (You can easily change the look and feel, this is just an example) > > Regards, > > Daan > > > On 16 sep 2008, at 16:54, Ryan Gravener wrote: > > There is always shinyforms. >> >> http://code.google.com/p/elephas/source/browse/#svn/trunk/src/main/ >> java/org/elephas/webapp/frontend/component/common/form >> >> On Tue, Sep 16, 2008 at 10:43 AM, Igor Vaynberg <[EMAIL PROTECTED] >> >wrote: >> >> we use componentborder to do this, works like a charm. still it is >>> interesting that the * is output before, are you sure its not your >>> css, can you check the generated source? >>> >>> -igor >>> >>> On Tue, Sep 16, 2008 at 6:23 AM, James Perry >>> <[EMAIL PROTECTED]> wrote: >>> >>>> I too recently had a use case where the customer wanted a '*' to >>>> represent a mandatory field. IMO, using a border is more subtle and >>>> tidier then your approach. >>>> >>>> On Tue, Sep 16, 2008 at 12:40 PM, Eyal Golan <[EMAIL PROTECTED]> >>>> wrote: >>>> >>>>> Hi, >>>>> I created this behavior for adding a star BEFORE the component is >>>>> >>>> rendered: >>> >>>> public final class MandatoryBehavior extends AbstractBehavior { >>>>> private static final long serialVersionUID = 5368825601887534185L; >>>>> >>>>> @Override >>>>> public void beforeRender(Component component) { >>>>> component.getResponse().write("* "); >>>>> } >>>>> >>>>> } >>>>> >>>>> 1. For some reason, the star is added AFTER the label. For example: >>>>> Configuration: * instead of * Configuration >>>>> 2. I am adding this to labels that displays mandatory fields such as >>>>> DropDown and TextField. Is there a nicer way? >>>>> >>>>> -- >>>>> Eyal Golan >>>>> [EMAIL PROTECTED] >>>>> >>>>> Visit: http://jvdrums.sourceforge.net/ >>>>> LinkedIn: http://www.linkedin.com/in/egolan74 >>>>> >>>>> P Save a tree. Please don't print this e-mail unless it's really >>>>> >>>> necessary >>> >>>> >>>>> >>>> --------------------------------------------------------------------- >>>> 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] >>> >>> >>> >> >> -- >> Ryan Gravener >> http://twitter.com/ryangravener >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Eyal Golan [EMAIL PROTECTED] Visit: http://jvdrums.sourceforge.net/ LinkedIn: http://www.linkedin.com/in/egolan74 P Save a tree. Please don't print this e-mail unless it's really necessary