数组将多条数据传到控制器,解决一张表的一个字段新增多次问题
开发工具与关键技术:VisualStudio C#
作者:落白
撰写时间:2019/07/07
一般表格数据的新增可以直接将需要保存的数据用一个form表单包裹住,然后使用form表单的序列化提交或者将数据一个一个地提交。这种方法只能解决一部分的数据提交,或者说只能算是单条数据的提交。
假如有一个form表单,里面有一些input标签、下拉框之类用于给学生填写姓名、性别、家庭住址等信息。这个可以序列化表单将信息提交到控制器,可当有多个学生的信息需要提交到控制器时那该怎么办?这就不是几个form表单的问题了。这种情况我们就该用数组来存放数据。
//构造函数
function studentData() {
this.name = null;
this.Sex = null;
}
//在构造的函数里插入数据
var student1 = new studentData;
student1.name = “米三”;
student1.Sex = “男”;
var student2 = new studentData;
student2.name = “苏九”;
student2.Sex = “女”;
//数组接收数据
var Data = new Array();
Data.push(student1);
Data.push(student2);
//提交到控制器
$.post("/PageDesign/TicketStatus/receiveData", { Data: Data }, function () {
});
在控制器中构建一个实体类,里面的字段要跟页面数据的字段相同,确保数据都能接收到,然后再在接收数据的控制器里声明将实体类声明出来。
public ActionResult receiveData(List Data)
{
return Json("", JsonRequestBehavior.AllowGet);
}
public class student
{
public string name { get; set; }
public string Sex { get; set; }
}
这样就能接收到页面传过来的数据了,至于之后要用这些数据来干什么就看个人需求了。