I have a loop over a radio group element. I'm trying to know which selected value each radio group has. Is there a way to dynamically generate value properties?
It works fine when it's only one radio group.
My .tml file:
<t:loop source="mapWaiverHeaderWithDetails.keySet()"
value="waiverHeader" t:id="mapWaiverHeader">
<div id="waivers_${waiverHeader.code}"
class="panel-collapse collapse in">
<div id="primary" class="panel-body editable">
<t:radiogroup value="selectedWaiverDetail" encoder="waiverDetailEncoder">
<ul>
<t:loop source="waiverDetails" value="waiverDetail">
...
</t:loop>
</ul>
</t:radiogroup>
</div>
</div>
</t:loop>
My .java file:
@Property
private WaiverDetail selectedWaiverDetail;
Thanks
You could use the map:
binding prefix from tapestry-stitch (demo here)
Then you could declare:
@Property
private Map<String, WaiverDetail> waiverDetailMap;
void onPrepareForSubmit() {
waiverDetailMap = new LinkedHashMap<String, WaiverDetail>();
}
And
<t:radiogroup value="map:waiverDetailMap[waiverHeader.code]" encoder="waiverDetailEncoder">