s:iterator遍历问题

User对象有两个属性:id,nameUserInfo类有三个属性:Useruser,Integerage,Datebirthdate现已有List<UserInfo>u... User对象有两个属性:id,name
UserInfo类有三个属性:User user,Integer age,Date birthdate

现已有List<UserInfo> userinfoList,已放入struts值栈中。

要输出一张表格,表头为name,age,birthdate,请问前台jsp怎么写<s:iterator>?

<s:iterator id="u" value="#userinfo">
<tr>
<td><s:property value="#u.user.name" /></td>

<td><s:property value="#u.age" /></td>
<td><s:property value="#u.birthdate" /></td>
</tr>
</s:iterator>

以上写法是不行的,name取不出

请教,谢谢
<s:iterator id="u" value="#userinfoList">
<tr>
<td><s:property value="#u.user.id" /></td>

<td><s:property value="#u.age" /></td>
<td><s:property value="#u.birthdate" /></td>
</tr>
</s:iterator>
真是奇怪,这样写id就能显示出来,换成name就要再刷新一次页面才行,费解
展开
 我来答
白菜一颗
2015-01-29 · TA获得超过8916个赞
知道大有可为答主
回答量:3260
采纳率:69%
帮助的人:3816万
展开全部
如果只是name没值别的两个都有值的话,你看看UserInfo中是否有getUser这个方法,如果有的话,再看看User中是否有getName这个方法,如果都没有问题,你就先在后台循环一遍,把这里面的name全部打出来看看
更多追问追答
追问
name是有值的。在空List里加一行UserInfo,age和birthdate都显示,name显示不出;再加一条UserInfo进List里,上一条name就会显示,本次新添的又不显示。可以肯定就是前台循环的问题。
追答

先问个问题,你后台定义的userinfoList,前台循环的是userinfo这个是写错了还是?再就是你换成下面这样试试

<s:iterator value="userinfoList">
<tr>
    <td><s:property value="user.name" /></td>
    <td><s:property value="age" /></td>
    <td><s:property value="birthdate" /></td>
</tr>
</s:iterator>
帅惜玉sh
2015-01-29 · TA获得超过243个赞
知道小有建树答主
回答量:343
采纳率:100%
帮助的人:309万
展开全部
你的name 没有值吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式