我有点困在可能是常见的情况,但在解决方案方面找不到多少. 我将一个int参数传递给MVC控制器方法,期待Json响应.问题是,在客户端填充时,参数在服务器端未被识别,并被解释为null. 这是代
我将一个int参数传递给MVC控制器方法,期待Json响应.问题是,在客户端填充时,参数在服务器端未被识别,并被解释为null.
这是代码:
function getBatches(p) { $.ajax({ type: "GET", data: "{'ProjectID': " + p + "}", url: "/Home/Batches", success: function(msg) { populateBatches(msg); } });
}
p的值是整数.在服务器端,代码如下所示:
[AcceptVerbs(HttpVerbs.Get)] public JsonResult Batches(int ProjectID) { return Json(TimeHelper.GetBatchesForProject(ProjectID)); }
我已经尝试稍微改变它,以便服务器端的int参数可以为空(即int?ProjectID),但同样,这似乎没有帮助.问题出在翻译的某个地方.想法?
数据需要是Javascript对象文字:$.ajax({ type: "GET", data: {ProjectID: p}, url: "/Home/Batches", success: function(msg) { populateBatches(msg); } });