通过JavaScript AJAX GET将参数传递给MVC控制器
本文关键字:MVC 控制器 参数传递 JavaScript AJAX GET 通过 | 更新日期: 2023-09-27 18:24:06
我正试图通过JavaScript中的AJAX将一组数据传递给我的C#控制器。传递的数据并不总是相同的。根本没有对系统进行创建/更新/删除,这纯粹是一个读取操作。
我的对象看起来像这样:
values = {
Id: [SOME INT ID],
DB: [SOME DB ID],
Values: [{collection of values}]
}
这是我的ajax调用:
$.ajax({
url: "MYURL?" + encodeURIComponent(JSON.stringify(values)),
type: "GET",
success: function(data){
// do callback stuff
},
dataType: "json"
});
我的控制器是:
[HttpGet]
public ActionResult MyController(DataViewModel viewModel){
// Stuff and Things code
}
数据根本没有填充在viewModel中的控制器中。所有值都为null。如何将JSON数据传递到控制器?提前谢谢。
您的ajax调用应该如下所示:
$.ajax({
url: "MYURL",
type: "GET",
success: function(data){
// do callback stuff
},
data: values
});
代码中存在的一些问题包括在url:
行末尾使用了分号而不是逗号,并且dataType:
设置了响应数据类型(而不是发送到服务器的请求数据类型)。