struts - 页面多行数据操作(list取值 、list提交、list保存 )

画面 :

 

IDNAMEAGE

1      Tom28

2Jack18

3 Mike38

 

* 红字为可编辑项目(type="text") 多行可编辑,整个页面数据一起更新。

 

 

Bean :

 

public class UserInfo {
	
	private String id;
	
	private String name;
	
	private String age;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}
	
}

 

 

 

ActionForm :

 

public class ActionForm {
	
	private List<UserInfo> userList;

	public List<UserInfo> getUserList() {
		return userList;
	}

	public void setUserList(List<UserInfo> userList) {
		this.userList = userList;
	}
}

 

 

 

 

JSP :

 

<html>
<body>
<c:forEach var="userInfo" items="${userList}" varStatus="loopStatus">
	<input type="text" name="userList[${loopStatus.index}].id" value="${userInfo.id}" />
	<input type="text" name="userList[${loopStatus.index}].name" value="${userInfo.name}" />
	<input type="text" name="userList[${loopStatus.index}].age" value="${userInfo.age}" />
</c:forEach>
</body>
</html>

 

 

 

 

List取值 :  value

 

List提交 :  name (通过设置多行name属性, 将数据提交到后台list对象)

List名[index].属性名【userList[0].id, userList[1].id ……】


List保存 :  提交后数据会保存在ActionForm.userList下

 

根据画面所记数据,可以得到以下list:

 

userList[0].id =  1

userList[0].name = Tom

userList[0].age = 28

 

userList[1].id =  2

userList[1].name = Jack

userList[1].age = 18

 

 

userList[2].id =  3

userList[2].name = Mike

userList[2].age = 38

 

 

你可能感兴趣的:(struts)