该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2005-09-01
View <form action="AddItemList.action" method="POST"> <ul> <li> The Item Name:<input type="text" name="itemlist.item.name" value=""> The Item Description:<input type="text" name="itemlist.item.description" value=""> </li> <li> The Item Name:<input type="text" name="itemlist.item.name" value=""> The Item Description:<input type="text" name="itemlist.item.description" value=""> </li> <li> The Item Name:<input type="text" name="itemlist.item.name" value=""> The Item Description:<input type="text" name="itemlist.item.description" value=""> </li> <li> The Item Name:<input type="text" name="itemlist.item.name" value=""> The Item Description:<input type="text" name="itemlist.item.description" value=""> </li> <li> The Item Name:<input type="text" name="itemlist.item.name" value=""> The Item Description:<input type="text" name="itemlist.item.description" value=""> </li> </ul> <input type="submit" value="Submit"> </form> Webwork Action public class AddItemListAction extends ActionSupport{ private List itemlist = new ArrayList();; /** * @return Returns the itemlist. */ public List getItemlist(); { return itemlist; } /** * @param itemlist The itemlist to set. */ public void setItemlist(List examItemList); { this.itemlist = examItemList; } public String execute(); { return SUCCESS; } } Model public class Item { private String name; private String description; public String getDescription(); { return description; } public void setDescription(String description); { this.description = description; } public String getName(); { return name; } public void setName(String name); { this.name = name; } } 原因我大概知道,Webwork并不知道itemlist.item是什么类型,所以无法实现这一级的注入,但是我不知道该怎么写代码来实现。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2005-09-01
搞定了,代码如下
View <form action="AddItemList.action" method="POST"> <#assign range=1..5> <ul> <#list range as i> <li> The Item Name:<input type="text" name="itemlist[${i_index}].name" value=""> The Item Description:<input type="text" name="itemlist[${i_index}].description" value=""> </li> </#list> </ul> <input type="submit" value="Submit"> </form> Action public class AddItemListAction extends ActionSupport{ private List itemlist; public AddItemListAction(); { itemlist = new ArrayList();; for (int i=0;i<5;i++);{ itemlist.add(new Item(););; } } /** * @return Returns the itemlist. */ public List getItemlist(); { return itemlist; } /** * @param itemlist The itemlist to set. */ public void setItemlist(List examItemList); { this.itemlist = examItemList; } public String execute(); { return SUCCESS; } } 有个缺陷,就是View和Action存在一定的耦合关系,Action必须知道View上数组的长度。 |
|
返回顶楼 | |
发表时间:2005-09-01
看webwork的ww:iterator 的文档
|
|
返回顶楼 | |
发表时间:2005-09-01
scud 写道 看webwork的ww:iterator 的文档
我喜欢用freemarker的语法, |
|
返回顶楼 | |
发表时间:2005-09-01
那就看freemarker的文档.....
<#list itemlist as index> |
|
返回顶楼 | |
发表时间:2005-09-01
scud 写道 那就看freemarker的文档.....
<#list itemlist as index> 谢谢,已经搞定了,第二个例子就是。 |
|
返回顶楼 | |
发表时间:2005-09-01
你不仅没看文档,也没看我回复的内容吗?
|
|
返回顶楼 | |
发表时间:2005-09-01
scud 写道 你不仅没看文档,也没看我回复的内容吗?
晕了,Form还没有提交前,<#list itemlist as index>这个会报错吧。 |
|
返回顶楼 | |
发表时间:2005-09-01
我看错了 sorry
我还以为是要显示结果.... 不过你的程序还是可以改进...现在很不好 |
|
返回顶楼 | |
发表时间:2005-09-01
sheing 写道 scud 写道 你不仅没看文档,也没看我回复的内容吗?
晕了,Form还没有提交前,<#list itemlist as index>这个会报错吧。 <#if itemlist?exists> ... </#if> |
|
返回顶楼 | |