如何解决如何将具有数组的对象传递给 AJAX 上的操作
我在 AJAX 中有一个对象,它有一个属性列表。我想将此对象传递给我的操作。但是所有的时间列表都是null
。我该如何解决?这是我的代码:
课程:
public class SaveProduct
{
public int Id { get; set; }
public string Code { get; set; }
public string Description { get; set; }
public decimal Price { get; set; }
public string UnitW { get; set; }
public int Amount { get; set; }
public List<SaveProductDetail> Details{ get; set; }
}
public class SaveProductDetail
{
public int id { get; set; }
public string name { get; set; }
}
Ajax:我尽量保持名字不变。
$("#sepeteEkleButton").click(function () {
var Code = $("#productName").val();
var Id = $("#productId").val();
var Description = $("#productDescription").val();
var UnitW = $("#productUnitW").val();
var Price = $("#productPrice").val();
var Amount = $("#productAmount").val();
var array = [];
$("select[data-knownid=1]").each(function () {
var selectedId = $(this).attr("data-savename");
var selectedName = $(this).find('option:selected').text();
array.push({ id: selectedId,name: selectedName });
if (selectedId == 3) {
//data-savenameDetay=""
var fabricDetailId = $("#configdetail option:selected").attr("data-secretmark");
var fabricDetailName = $("#configdetail option:selected").text();
array.push({ id: fabricDetailId,name: fabricDetailName });
}
});
var arr = { Code: Code,Id: Id,Description: Description,UnitW: UnitW,Price: Price,Amount: Amount,Details: array };
$.ajax({
type: 'get',contentType: 'application/json; charset=utf-8',url: '/Panel/PD',data: arr,cache: false,dataType: 'json'
});
});
和我的控制器
public JsonResult PD (List<SaveProductDetail> array)
{
return Json(null);
}
解决方法
下面是一个简单的演示,您可以查看。
<button id="button">Test</button>
@section Scripts
{
<script>
$('#button').click(function () {
var array = [];
array.push({ id: 1,name: "aa" });
array.push({ id: 2,name: "bb" });
var arr = {
Code: "Code",Id: 1,Description: "aaa",UnitW: "UnitW",Price: 12,Amount: 1,Details: array
};
$.ajax({
data: JSON.stringify(arr),url: '/Panel/PD',datatype: 'json',type: 'POST',contentType: 'application/json; charset=utf-8',});
});
</script>
}
在你的行动中:
public JsonResult PD ([FromBody] SaveProduct model)
{
return Json(null);
}
测试结果:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。