通过AJAX向控制器发布Javascript数组
Posting Javascript Array To Controller Via AJAX
我可以接受作业,但不能在控制器端获得jobItem。我检查了JobItem列表不是空的,但不上控制器
var Job = { "Name": "", "Date": "", "Description": "", "AuthPersonId": "", "ClientId": "", "DealerId": "", "JobItem": [] };
var JobItem = { "": "", "ItemId": "", "Quantity": "" };
Job.Name = $("#Name").val();
Job.Date = $("#Date").val();`enter code here`
Job.Description = $("#Description").val();
Job.AuthPersonId = $("#AuthPersonId").val();
Job.ClientId = $("#clientName").attr("data-id");
Job.DealerId = $("#dealerName").attr("data-id");
alert(Job.ClientId + "scas" + Job.DealerId);
for (var w = 0; w < Urunler.length; w++) {
JobItem.ItemId = $(".I-" + w).attr("data-ItemId");
JobItem.Quantity = $(".I-" + w).attr("data-urunAdet");
alert(JobItem.ItemId + "--" + JobItem.Quantity)
console.log(JobItem)
}
$.ajax({
url: '/Jobs/Save',
data: JSON.stringify(Job),
type: 'POST',
contentType: 'application/json;',
dataType: 'json',
traditional : true,
success: function (result) {
if (result.Success == "1") {
window.location.href = "/Company/index";
}
else {
alert(result.ex);
}
}
});
public JsonResult Save(Job Job)
{
try
{
if (ModelState.IsValid)
{
db.Job.Add(Job);
db.SaveChanges();
JobItem jbitm=new JobItem();
//jbitm.ItemId=Job.JobItem.First().ItemId;
//db.JobItem.Add(Job.JobItem.ToList())
return Json(new { Success = 1});
}
}
catch (Exception ex)
{
return Json(new { Success = 0, ex = ex.Message.ToString() });
}
return Json(new { Success = 0, ex = new Exception("Unable to save").Message.ToString() });
}
我可以接受这份工作,但不能在控制器端获得这份工作。我检查了JobItem列表不是空的,但ı不要进入控制器
我想这应该推送到JobItems?
所以也许可以改变这个:
alert(Job.ClientId + "scas" + Job.DealerId);
for (var w = 0; w < Urunler.length; w++) {
JobItem.ItemId = $(".I-" + w).attr("data-ItemId");
JobItem.Quantity = $(".I-" + w).attr("data-urunAdet");
alert(JobItem.ItemId + "--" + JobItem.Quantity)
console.log(JobItem)
}
至:
for (var w = 0; w < Urunler.length; w++) {
var newJobItem = {
ItemId: $(".I-" + w).attr("data-ItemId"),
Quantity: $(".I-" + w).attr("data-urunAdet");
};
Job.JobItem.push(newJobItem);
}
为什么使用空字符串作为属性名称?
var JobItem={":","ItemId":","Quantity":"};
尝试删除":"
并且,请发布JobItem类定义。
您将Job.JobItem初始化为null,然后初始化JobItem,但我看不到:
Job.JobItem=作业项目
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 将Javascript数组发送到控制器ASP.NET MVC
- JavaScript数组包含一个值
- 将JavaScript数组传递给函数
- javascript:数组循环
- 将数据存储在javascript数组中以供进一步使用
- 在Javascript数组中查找绝对最大值
- JavaScript数组优化以提高性能
- 在javascript数组中分散数字
- 如何发送分配列表<字符串>到JavaScript数组或可枚举对象
- Javascript数组动态
- javascript数组元素是否知道其封闭数组
- 将 JSON 数组解析为 JavaScript 数组
- 将Transform和Instance Variable转换为对象的JavaScript数组
- 使用Web Html表单创建Javascript数组
- 从重复的javascript数组结果集中只获取一行
- 如何为Javascript数组()的使用准备PHP变量
- Javascript数组和函数
- 为DataTables aoColumnDefs创建JavaScript数组(JSON格式)