【发布时间】:2014-05-21 10:32:18
【问题描述】:
我无法将我的 JSON 获取到我的控制器,并且我无法弄清楚为什么我在 javascript 中获得的值没有被传递给控制器。这是我在 javascript 中的 ajax 帖子:
this.save = function () {
var data = ko.toJSON(this.Routines);
$.ajax({
type: 'POST',
url: "CreateJson",
data: data,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (result) {
if (!result.success)
alert("test")
else { }
}
})
}
现在数据包含
[{"routine_name":"new routine","duration":"20","rest":"10","rounds":1}]
这是我想要的,但控制器什么也没显示。这是我的控制器
[HttpPost]
public JsonResult CreateJson(t_routine routine, string data)
{
var message = "success";
return Json(message);
}
据我了解,MVC 3+ 会自动接收 JSON,而不需要像我的字符串数据这样的参数,我只是把它扔在那里试图弄清楚我是否得到任何东西。数据为空,例程显示 0 和空值。我错过了什么?
【问题讨论】:
-
您是否确认它访问了正确的 URL?触发请求时,firebug 在网络中向您显示什么?也许尝试 / 为 url 的前缀
标签: json model-view-controller knockout.js