日期:2014-05-17  浏览次数:20819 次

struts传值问题
我用的下面的这种传值方式,但是我要传过来的值有多个name相同的值,name=“1”,name=“2”都要同时传过来,如何实现啊?

把表单传递过来的参数封装成一个类,然后调用其中的属性.

如,把login.jsp页面要传来的参数进行封装

private String username;
 private String password;
 
 public String getUsername() {
  return username;
 }
 public void setUsername(String username) {
  this.username = username;
 }
 public String getPassword() {
  return password;
 }
 public void setPassword(String password) {
  this.password = password;
 }

然后再Action方法中,定义该类的对象就可以了,如

public class loginAction extends ActionSupport{

private Users users;

public Users getUsers(){

return users;

}

public void setUsers(Users users){

this.users=users;

}

/*

传递过来的参数都封装在users中了,用getter方法取值就可以了

*/

}

通过这种方法传值,还必须在jsp页面做一下处理,login.jsp中from1的属性名应该改成这样:

登陆表单login.jsp:

<form action="login" method="post" name="form1">
  用户名:<s:textfield name="users.username"/><br/>
  密 码:<s:password name="users.password"/><br/>
  <s:submit value="提交"/> 
  </form>

这种方法,在struts开发中是很常用的一种方法!



------解决方案--------------------
你可以试试数组的方式呢
------解决方案--------------------
前台js里面以逗号隔开拼接字符串,把所有的name值拼接在一起,传到后台,再到后台的时候把字符串分割开。。。。
------解决方案--------------------
哥们! 这种情况本来就是一个数组 你直接数组接收就行了啊

------解决方案--------------------
这样的问题,直接用数组就可以了