gpt4 book ai didi

javascript - 通过 ajax 发送多个对象(使用 Angular )

转载 作者:太空宇宙 更新时间:2023-11-03 19:55:22 24 4
gpt4 key购买 nike

我在对象“数据”中有一个用户输入列表。 (例如 data.username、data.password、data.age)

我正在使用 angular 像这样将数据对象传递到后端。

var submits = "=" + JSON.stringify(data);

$.ajax({
type: "POST",
url: serviceURL,
data: submits
});

我正在传递另外两个对象。选择和网格。我怎样才能在一个 ajax 调用中将所有这三个一起传递?还是我必须独立转移它。如果我单独传输这些细节,它会影响性能吗?

我可以做这样的事情来在一个 ajax 调用中一起发送对象吗?

var data = {};
data[0] = data1;
data[1] = data2;

如果它们一起传递,我如何使用 C# 在服务器端单独检索它们。

这是我需要传递的 3 个对象

data -->>         ["Raul","New York","31"]
selections-->> ["dy.txt","my.txt","yy.txt"]
grid--> ["sesion","id"]

最佳答案

假设你的服务器端有这样一个 View 模型

public class CreateUserViewModel
{
public string UserName{set;get;}
public string Location {set;get;}
public int Age {set;get;}
}
public class RegisterViewModel
{
public CreateUserViewModel User {set;get;}
public List<string> Selections {set;get;}
public List<string> Grid {set;get;}
}

和像这样的 MVC 操作方法

public ActionResult Create(RegisterViewModel model)
{
// read model and save and return some JSON response
}

您可以简单地构建与 View 模型结构匹配的 javascript 对象,并使用 angualr 的 $http 服务发布它。无需担心设置内容类型或 Json 字符串化它。 Angualr 会处理它。

var model={ User : {} ,Selections :[], Grid=[] };
model.User.Age =23;
model.User.UserName ="test";
model.User.Location="New York";

model.Selections.push("dy.txt");
model.Selections.push("some.txt");

model.Grid.push("session");
model.Grid.push("id");

var url="replcaeUrltoYourActionMethodHere";

$http.post(url, model)
.then(function(response)
{
// do something with the response
// var result= response.data
});

关于javascript - 通过 ajax 发送多个对象(使用 Angular ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34210223/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com