如何将列表的值存储在不同的文本框中(每个文本框具有不同的id)

时间:2012-07-17 12:49:29

标签: hibernate struts2

我正在使用struts2和hibernate。

我有一个jsp页面,它被加载到一个动作上。相关的action类返回list个Objects作为存储在数据库中的表的行。

当页面加载时(列表中存储了所有行),我希望每行的数据以及在单独的文本框中显示的每个列的相应值,每个文本框都有不同的id 。例如,list有15个对象(作为表的行),list中的每个对象都有10个属性(作为列),然后我希望10*15 = 150 textboxes每个具有不同的ID。< / p>

我怎样才能做到这一点?使用<s:iterator><s:property>,我只能拥有10个文本框(等于列数,因为我们只能拥有10个<s:property>)...?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

<s:iterator value="yourList" status="status">
 <s:textfield name="col1" value="%{prop1}" id="col1-%{#status.count}/>
 <s:textfield name="col2" value="%{prop2}" id="col2-%{#status.count}/>
 <s:textfield name="col3" value="%{prop3}" id="col3-%{#status.count}/>
 <s:textfield name="col4" value="%{prop4}" id="col4-%{#status.count}/>
 <s:textfield name="col5" value="%{prop5}" id="col5-%{#status.count}/>
 <s:textfield name="col6" value="%{prop6}" id="col6-%{#status.count}/>
 <s:textfield name="col7" value="%{prop7}" id="col7-%{#status.count}/>
 <s:textfield name="col8" value="%{prop8}" id="col8-%{#status.count}/>
 <s:textfield name="col9" value="%{prop9}" id="col9-%{#status.count}/>
 <s:textfield name="col10" value="%{prop10}" id="col10-%{#status.count}/>
 <br/>
</s:iterator>

虽然,我认为这是一个糟糕的设计。尝试使用dataTable甚至简单的表格。