ajax傳遞數組、form表單提交對象數組


在JSP頁面開發中,我們常常會用到form表單做數據提交,由於以前一直只是使用form表單提交單個對象,只要表單文本域的name值和接收的對象的屬性名一致,那么傳值就沒有什么問題。不過,在前幾天的開發任務中,遇到了需要批量傳遞對象,也就是需要傳遞對象數組,在此做個總結。今天又遇到需要向后台傳遞數組,便一並寫下來吧。

1、ajax傳遞普通數組
前台代碼

 

var deleteNum= [];//定義要傳遞的數組
deleteNum.push("1");
deleteNum.push("2");
deleteNum.push("3");//向數組中添加元素

$.ajax({
    type:"post",
    url:"deleteNum.do",
    data:{deleteNum:deleteNum},
    traditional: true,//必須指定為true
    success:function(data){
        if(data.success){
            deleteNum = [];
        }
    }
});

 后台代碼

public ActionResult deleteNum(String[] deleteNum){
    
    //這個時候已經得到了deleteNum數組值
    return Json(new {status=1});
}

 form表單提交自定義對象數組

<form id="form" name="form"  method="post">
  <table>
    <tr>
      <td><input type="text" name="user[0].name"/></td>
      <td><input type="text" name="user[0].password"/></td>
    </tr>
    <tr>
      <td><input type="text" name="user[1].name"/></td>
      <td><input type="text" name="user[1].password"/></td>
    </tr>
    <tr>
      <td><input type="text" name="user[2].name"/></td>
      <td><input type="text" name="user[2].password"/></td>
    </tr>
  </table>
</form>

 之后在form表單提交給后台時,需要先定義一個對象,當然,別忘了定義User對象,屬性為name,password,重點是下面這個用於接收form表單提交的對象數組,如果還有其他對象數組需要接收,那在這個類里面再定義相應的ArrayList屬性即可。

/** * 類型描述 * 表單列表對象 用於接收form表單提交的對象數組 * @since 2016-2-25 * @author 古時一輪月 * */ public class FormListObject { private ArrayList<User> userlist; public ArrayList<User> getUserlist() { return userlist; } public void setUserlist(ArrayList<User> userlist) { this.userlist= userlist; } }

定義好該對象之后,在controller層接收就可以了

public AjaxResult saveOrUpdateUser(FormListObject list){
    List<User> userlist = list.getUserlist(); //你會看到你想要的
}

 轉自:http://blog.csdn.net/u014252157/article/details/50751302


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM