【发布时间】:2020-05-26 17:07:36
【问题描述】:
我有一个存储过程,可以根据日期选择表中的所有字段。然后我创建了一个如下所示的方法以将结果返回为 JSON。
[HttpGet]
public JsonResult GetResult()
{
MonthNameConverter converter = new MonthNameConverter();
string fullDate = converter.startOfMonth().ToShortDateString();
string[] split = fullDate.Split('/');
string date = "";
if(Convert.ToInt32(split[0]) < 10)
{
date = split[2] + "-0" + split[0];
}
else
{
date = split[2] + "-" + split[0];
}
var results = travelSOCC.GetLansingMileage(date).ToList();
return Json(results, JsonRequestBehavior.AllowGet);
}
但是,当我将数据附加到 HTML 表格时,我得到了一个无法识别的结果。
$(function LoadData() {
$("#LansingTable tbody tr").remove();
$.ajax({
type: 'GET',
url: '@Url.Action("GetResult")',
dataType: 'json',
data: JSON,
success: function (data) {
$.each(data, function (item) {
var rows = "<tr><td>" + item.TravelDate + "</td><td>" + item.TripType + "</td></tr>";
$("#LansingTable tbody").append(rows);
});
},
error: function (ex) {
var r = jQuery.parseJSON(response.resonseText);
alert("Message: " + r.Message);
}
})
});
非常感谢任何帮助。
【问题讨论】:
-
GetResult是POST方法吗? -
您的操作方法是 get 但您的 ajax reguest 是 post。操作方法的默认 http 动词是 get。
-
它缺少
[httpPost],但我添加了它,我仍然收到同样的问题。 -
您能否详细说明“未识别的结果”?
-
@Crowcoder 我在原帖中添加了更多信息,但基本上它的说法 item.TravelDate 是未定义的,我不明白为什么会这样。
标签: c# ajax model-view-controller