这样的:
jsp页面中有一个固定数据好说,还有两种动态数量数据:工资类型,工资。工资类型是个bean:id,工资类型名称,那个固定数据人员。因为工资类型是可以自定义的,所以工资类型的数量是动态的,可能只有一个,可能有多个(0个不用考虑)。众所周知,jsp中每一个html标签的property都对应formbean中的一个属性,但是jsp中的property成动态数量的了就没法写form了,查了下,是用list,资料中form中的写法很详细,action中也好写,关键是jsp页面中怎么写我迷糊了。(我看 的是这篇文章: http://www.javaeye.com/topic/169559 )form中只有一个list属性,jsp提交的时候也要提交一个list吧,但是jsp中的数据怎么整合成一个list呢????!
问题补充:
一个工资类型 对应一个用户输入的工资
工资类型从数据库中取出类型列表iterator 和他对应的工资是用户输入<html:text /> ,这个在jsp中怎么写啊?资料中那个<logic:iterator >标签的属性看不懂,哪位大侠给写下 这段jsp代码啊。顺便解释下属性的意思。
jsp页面中有一个固定数据好说,还有两种动态数量数据:工资类型,工资。工资类型是个bean:id,工资类型名称,那个固定数据人员。因为工资类型是可以自定义的,所以工资类型的数量是动态的,可能只有一个,可能有多个(0个不用考虑)。众所周知,jsp中每一个html标签的property都对应formbean中的一个属性,但是jsp中的property成动态数量的了就没法写form了,查了下,是用list,资料中form中的写法很详细,action中也好写,关键是jsp页面中怎么写我迷糊了。(我看 的是这篇文章: http://www.javaeye.com/topic/169559 )form中只有一个list属性,jsp提交的时候也要提交一个list吧,但是jsp中的数据怎么整合成一个list呢????!
问题补充:
一个工资类型 对应一个用户输入的工资
工资类型从数据库中取出类型列表iterator 和他对应的工资是用户输入<html:text /> ,这个在jsp中怎么写啊?资料中那个<logic:iterator >标签的属性看不懂,哪位大侠给写下 这段jsp代码啊。顺便解释下属性的意思。
將指定的Collection物件依序取出至指定的變數,直接看例子會比較清楚,如果userForm的傳回值是Collection物件:
代碼:
<!-- 複製Collection屬性至id -->
<bean:define id="props" name="userForm" property="someCollection"/>
<logic:iterate id="prop" collection="<%=props%>">
<bean:write name="prop"/>
</logic:iterate> 也可這麼寫:
代碼:
<logic:iterate id="prop" name="userForm" property="someCollection">
<bean:write name="prop"/>
</logic:iterate>
大哥大姐,关键是jsp中不知道怎么写啊。
工资类型=key 工资=value 这个value是用户输入的。
正常的话就是:<html:text property="key" />
然后在form中写个 key 的get。set方法。然后action中就能取值了。但是那个key数量是动态的 key1,key2..,从数据库中取出的。
按普通方法:jsp页面中能写,但是form中的属性和get set 没法写,不知道有几个key嘛。这样的话jsp怎么写啊。1楼哪位大哥似乎没有用户输入的内容啊,而且输入的内容value怎么和那个key对应起来?、然后还能提交到form,action
2;楼姐姐 form中用 map的话,jsp中要怎么给map赋值
<html:text name="detail" property="id" indexed="true"/>
</logic:iterate>
在ACTIONFORM里如下定义private class xxxxForm extends ActionForm { private List<Bean> list = new ArrayList<Bean>(); ...set...get private Bean detail = new Bean(); public Bean getDetail (int index) {
while(list .size() <=index){
list.add(new Bean ());
}
return (Bean )list .get(index);
}
public void setDetail(Bean detail ) {
this.detail = detail ;
}
}private class Bean {
private String id; ...set...get
}其他没有get,set的添加上,注意Bean的get方法。
在JSP页面上不要用STRUTS的<logic:iterate ></logic:iterate>标签,把循环直接写在<% %>里面
<%
for (//有可能循环的次数) {
%>
<html:text property='"gongziList[" + i + "]"' >
<%
}
%>
在FORM中,要对公司list定义两个get,set方法,一个是和String等属性的变量一样的,另一个是用索引来定义的,这一点你应该已经知道了。
上面的代码就是在JSP中实现的一个模型。
<%
for (//有可能循环的次数) {
%>
<html:text property='<%="gongziList[" + i + "]"%>' >
<%
}
%>