我试图将复选框绑定到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

最佳答案

我需要的绑定代码是:

#springFormCheckbox("command.selectedEntities[$velocityCount]", "id=entity$velocityCount value=$item.key #if($command.selectedEntities.contains($item.key)) checked=checked #end ")


我倾向于在实时版本中输入错误,而不是使用此简化示例。

09-30 17:03