ハッシュマップをループして、ハッシュマップのキーを id にしてハッシュマップの値にラベルを付ける番号のチェックボックスを表示しようとしています。そのためのタペストリー構文がどのようになっているのか誰でも知っていますか?
乾杯ディミトリス
次のようにキーセットをループできるはずです。
<form t:type="Form">
<t:Loop t:source="myMap.keySet()" t:value="currentKey">
<input type="Checkbox" t:type="Checkbox" t:id="checkbox"
t:value="currentValue"/>
<label t:type="Label" for="checkbox">${mapValue}</label>
</t:Loop>
</form>
クラスファイル:
@Property
private Object currentKey;
@Persist
private Set<String> selection = new HashSet<String>();
public Map<String,String> getMyMap() {
...
}
public boolean getCurrentValue() {
return this.selection.contains(this.currentKey);
}
public void setCurrentValue(final boolean currentValue) {
final String mapValue = this.getMapValue();
if (currentValue) {
this.selection.add(mapValue);
} else {
this.selection.remove(mapValue);
}
}
public String getMapValue() {
return this.getMyMap().get(this.currentKey);
}
私はこれを編集していませんが、始めるのに役立つはずです。