I use a RadioGroup with a Loop frequently.  I think you only need to change
the way you specify the label.
Here's an example from my code:

<t:radiogroup value="item.territory">
  <t:loop source="model.territories" value="territory">
    <t:radio t:id="territory" value="territory" label="prop:territory.name
"/>
    <t:label for="territory" class="radiolabel"/>
  </t:loop>
</t:radiogroup>



On Sun, Dec 12, 2010 at 8:18 AM, Anton Mezerny <anton.meze...@gmail.com>wrote:

> Hi all,
> I'm trying to render dynamic RadioGroup like here:
>
> > <t:radiogroup t:id="radioGroup"
> >
>                      value="value"
> >                       label="prop:context.availableLabel"
> >                       encoder="valueEncoderForFeature"
> >                       validate="prop:selectValidator">
> >
> <t:loop source="context.availableItemList" value="oneItem">
> >                       <t:radio label="literal:oneItem.name"
> value="oneItem"
> > />
> >     </t:loop>
> >
> </t:radiogroup>
> >
> Now labels are not rendered at all. Component renders only radiobuttons
> without any text lables.
> I can't add <t:tabel> tag because I have no defined Radio component in my
> component class (it could be several radiobuttons inside one RadioGroup).
> I tried also use plain html, like
> <label
> for="${currentFeature.id}-feature-label">${currentFeature.name}</label>
> <input id="${currentFeature.id}-feature-label" t:type="radio"
> label="literal:currentFeature.name" value="currentFeature" />
> but tapestry rewrites input id, so label is rendered but not work as a
> label
> (click on it does'nt work)
>
> How can I achieve a normal label behavior in my case?
> Thanks in advance.
> Anton
>

Reply via email to