Here's the pieces that I used. Sounds like Igor's approach is better, 
but here it is if you can't do it that way.
in your css:
.invisible{
    display: none;
      }
.visible{
    display: inline;
      }



Now, the component side (proficiencyChoice is a dropdown)

proficiencyChoice.setOutputMarkupId(true);
            //define the model that will return the stylesheet 
(visible/not visible) for the select box proficiencyChoice
            IModel modelForStylesheet = new Model()
             {
                 public Object getObject( Component c )
                 {
                     if (mdl.isSelected())
                         return "visible";
                     else
                         return "invisible";
                 }
             };
             proficiencyChoice.add( new AttributeModifier (  "class", 
true, modelForStylesheet  ));
            rvitem.add(proficiencyChoice);
--James

kenixwong wrote:
> I am a wicket newbie too:)..
>
> can i know how u used CSS to control it ? can give any idea to me as well? 
>
> thanks ar
>
>
>
> James Law wrote:
>   
>> I am a wicket newbie, but when I had a similar thing I wanted to do, I 
>> just used CSS to make the component invisible/visible (display: none). 
>> The ajax behavior just changed the style. I am pretty certain setVisible 
>> is not the best/easiest way to handle this.
>>
>> James
>>
>> kenixwong wrote:
>>     
>>> I'd like to be able to click a set of radio box and then make a component
>>> visible or invisible using Ajax or else. Is that any idea for it? 
>>>
>>> As i read the radioGroup and radioChoice, can i know what is the
>>> different
>>> btw both? 
>>>
>>> Here is my partial code:
>>> categoryField = new TextField("category");
>>> categoryField.setOutputMarkupId(true);
>>>
>>> final RadioGroup radioGroup = new RadioGroup("RadioGroup", new Model());
>>> listView = new ListView("ListView", optionClassList)
>>> {
>>>     protected void populateItem (final ListItem item)
>>>     {
>>>             Radio radio = new Radio("radio", item.getModel());
>>>             radio.add (new AjaxEventBehavior("onclick")
>>>              {
>>>                      protected void onEvent (AjaxRequestTarget target)
>>>                     {
>>>                         if(item.getModelObject ().equals("abc")){
>>>                             target.addComponent 
>>> (departmentChoice.setVisible(false));
>>>                          }else{
>>>                                     target.addComponent 
>>> (categoryField.setVisible(false));
>>>                           }
>>>                     }
>>>                  });
>>>             item.add(radio);
>>>             item.add(new Label("label", (String)item.getModelObject ()));
>>>     }
>>> };
>>> radioGroup.add (listView);
>>> add(radioGroup);
>>>             
>>>
>>> It work, but oaly the first time. Mean after i clicked on the radio few
>>> times, it nothing happen. 
>>>
>>> thanks for help... 
>>>   
>>>       
>> -------------------------------------------------------------------------
>> This SF.net email is sponsored by DB2 Express
>> Download DB2 Express C - the FREE version of DB2 express and take
>> control of your XML. No limits. Just data. Click to get it now.
>> http://sourceforge.net/powerbar/db2/
>> _______________________________________________
>> Wicket-user mailing list
>> Wicket-user@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wicket-user
>>
>>
>>     
>
>   


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to