在我的场景中,我需要在c#对象的数组中存储一些值,并为这些值设置一些值。然后我需要通过ajax调用将这些值存储到数据库。请帮帮我任何建议。我有三个可用的对象都需要去数据库。
将有一种形式的区域,用户将通过拖放功能添加文本框,文本区域,字段集,区域等控件。对于每个元素,例如,文本框的名称将被允许做粗体,斜体,下划线等样式,点击这个将有一个完成按钮我需要保存这些元素的所有设置属性javascript数组并且像这样存储在单独的javascript对象中的所有元素细节,并且这些对象需要存储在对象数组中,以便我可以使用该对象数组将其保存在数据库中。 点击完成按钮即可启动此功能,这是一个自定义样式控制按钮。
$("#btnDoneMini").click(function () {
var mydata = new Object();
mydata.id = id;
mydata.Name = $('#' + id).text();
$("#tblStyleControlMini").hide();
});
现在我需要将mydata对象存储到数组中....请建议!!
答案 0 :(得分:3)
所以,我重新阅读了这个问题,在更新之后,你需要做两件事:
至于客户方,这很简单:
首先声明一些你想要创建的对象:
function userCreatedItemObject(id,name)
{
this.Name = name;
this.Id = id;
}
然后创建一些数组来存储这些对象:
var arrayOfObjects = [];
然后在您的单击处理程序中,将一个新对象推入数组:
$("#btnDoneMini").click(function () {
//Instead of this
//var mydata = new Object();
//mydata.id = id;
//mydata.Name = $('#' + id).text();
//Do This:
var name = $('#' + id).text();
arrayOfObjects.push(new userCreatedItemObject(id,name));
$("#tblStyleControlMini").hide();
});
对于发送部分,您可以通过ajax在控制器上传递此数组。只要该操作接受具有id和name属性的对象列表,它就应该通过它,没问题。 这是一个例子:Passing a list of object via ajax to controller
这是我之前的答案文本供参考:
这是关于stackoverflow的类似问题,请查看此问题,看看它是否可以解决您的问题:How to Post an array of complex objects with Jquery, Json, and MVC
答案 1 :(得分:1)
现在编辑后让你的问题有些意义, 我想你正试图做这样的事情:
var dataarray = $.map(mydata, function(value, index) {
return [value];
});
顺便说一句,它仍然可以轻松用Google搜索(Converting a JS object to an array)