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