我正在尝试将复选框绑定到我的POJO上的项目列表。
class SimplePOJO {
private List <Key> selectedEntities = new ArrayList<Key>();
public void setSelectedEntities(List <Key> a) { this.selectedEntities = a; }
public List <Key> getSelectedEntities() { return this.selectedEntities; }
}
速度标记:
#springBind("command")
#springFormCheckBox("command.selectedEntities", "")
这根本不起作用,只是逐字输出代码。
尝试使用标准物品:
<input type="checkbox"
#if ($command.selectedEntities.contains($item)) checked="checked" #end
value="$item.key" />
每当我检查任何方框并提交表单时,我的支持bean列表仍为空。如何在列表中完成设置值?
注意:我还在POJO中尝试了以下内容:
private List <Key> selectedEntities = new AutoPopulatingList <Key>(Key.class);
环境:Spring 3.0.5,Velocity Engine 1.7
答案 0 :(得分:1)
我需要的绑定代码是:
#springFormCheckbox("command.selectedEntities[$velocityCount]", "id=entity$velocityCount value=$item.key #if($command.selectedEntities.contains($item.key)) checked=checked #end ")
我倾向于在实时版本中输入拼写错误,而不是这个简化的例子。
答案 1 :(得分:0)
也许你需要这个:
#springFormCheckboxes("command.selectedEntities" $labels " " "")
其中$labels
是从Key
到其复选框标签的地图。第三个参数是复选框之间的分隔符,第四个参数是任意属性。
另见: