我正在使用JQuery将数据发送到控制器,但控制器没有收到任何数据。如何通过ajax调用发送多个表的数据?
我想发布两个表的数据,这些字段是动态创建的,有些是在html中。
这里是我的代码示例:
{
coursesarray.push($("#coursename").val());
for (var i = 1; i < counter; i++)
{
var courses = $('#coursename' + i).val();
coursesarray.push(courses);
}
obj.tbl_course = coursesarray;
obj.Name = Name;
$.ajax(
{
type: "POST",
datatype: "json",
contenttype: "application/json/",
url: "/Demo/SaveData/",
data: JSON.stringify(obj),
success: savesuccess,
error:saveerror
});
});
控制器方法
public JsonResult SaveData(tbl_name tblobj)
{
db.tbl_name.Add(tblobj);
db.SaveChanges();
foreach (var a in tblobj.tbl_course)
{
db.tbl_course.Add(a);
db.SaveChanges();
}
return Json("success", JsonRequestBehavior.AllowGet);
}
和型号
public partial class tbl_name
{
public int PkId { get; set; }
public string Name { get; set; }
public virtual ICollection<tbl_course> tbl_course { get; set; }
}
和第二种模式是
public partial class tbl_course
{
public int Pkid { get; set; }
public Nullable<int> FkId { get; set; }
public string Coursename { get; set; }
public string CourseTeacher { get; set; }
public virtual tbl_name tbl_name { get; set; }
}
您需要显示您发布的控制器方法以及绑定到的模型。 –
我已经发布了一切,请看看。 –
尝试数据:{tblobj:JSON.stringify(obj)}, – Ritz