Action中定义一个List 里面放了十个对象。
public class testAction  extends ActionSupport{
public List<User>  testList=  new ArrayList<User>();

public String execute(){
for(int i = 0;i<10;i++){
testList.add(new User());
}
return "SUCCESS";
} public List<User> getTestList() {
return testList;
} public void setTestList(List<User> testList) {
this.testList = testList;
}

}
jsp中定义一个表格,想将textfield 于Action中的List绑定。当页面输入值时提交表单后在后台Action中可以接收到一个有值(界面输入的值)的List。但是jsp中像这样写:[name = "info.login"]不能绑定到list中请教应该怎么写。
<table class="Checkbox_table_2">
<tr>
<td >Name</td>
<td>Password</td>
</tr>
<s:iterator value = "testList" id = "info">
<tr>
<td><s:textfield  name = "info.login"></s:textfield  ></td>
<td><s:textfield name = "info.password"></s:textfield ></td>
</tr>
</s:iterator>
</table>
界面点OK希望后台Action的List可以获取输入的值

解决方案 »

  1.   

    jsp中 应该怎么写可以映射到Action中的list中去
      

  2.   

    struts2只能映射实体类 或 map类型  应该无法映射list   
    这种情况可以将数据转成json格式(jquery有现成的方法)  后台用string接收 然后转成list(可以用gson)
      

  3.   

    <s:textfield  name = "info.login"></s:textfield  >改为
    <s:textfield  name = "login">${info.login}</s:textfield  >
    别的类似
      

  4.   

    那就要在后台定义一个info对象了。
      

  5.   

    ognl集合数组的赋值方式<s:iterator value = "testList" status="st">
        <tr>
          <td><s:textfield name = "testList[#st.index].name"></s:textfield></td>
          <td><s:textfield name = "testList[#st.index].password"></s:textfield ></td> 
        </tr>
    </s:iterator> 
      

  6.   

    一般这种东西都得用jquery-grid的之类的插件去搞
      

  7.   

    <table class="Checkbox_table_2">
    <tr>
    <td >Name</td>
    <td>Password</td>
    </tr>
    <s:iterator value = "testList" var = "info">
    <tr>
    <td><s:textfield  name = "#info.login"></s:textfield  ></td>
    <td><s:textfield name = "#info.password"></s:textfield ></td>
    </tr>
    </s:iterator>
    </table>怎么能是id呢,应该是var = "info"
      

  8.   

    会报Attribute var invalid for tag iterator according to TLD这个错