【发布时间】:2014-06-14 10:58:20
【问题描述】:
我是 ftl(FreeMarker 模板)的新手。我使用这样的模型映射从我的控制器发送一个对象列表
我的控制器代码
@RequestMapping(value="/xxx")
public String myMethod(ModelMap model){
List<MyDTO> dto = mymethods(); // I return some list objects in this method
model.addAttribute("dto",dto);
model.addAttribute("dtoLength",dto.size());
return "myview";
}
MyDTO.java
public class myDTO{
Public String var1;
Public String var2;
public String getVar1() {
return var1;
}
public void setVar1(String var1) {
this.var1 = var1;
}
public String getVar2() {
return var2;
}
public void setVar2(String var2) {
this.var2 = var2;
}
}
现在我尝试从我的 ftl 的 javascript 访问 dto。我尝试了很多这样的方式:
var dto=${dto};
它说必须在 ${....} 中的任何内容都应该是字符串、整数、布尔值 ..blah blah
所以我想像这样迭代它以获得我想要的东西
var valueIWanted;
if(${dtoLength}>0){
for(var i=0 ; i < ${dtoLength} ; i++){
ticketList[i] = ${ticket[i].var2};
}
}
但我也无法以这种方式访问它。我应该在这里做什么?我想我错过了语法。有人可以帮我解决这个问题吗?
【问题讨论】:
-
你在哪里定义了
ticketLength?
标签: java javascript html spring freemarker