C# 使用Ajax的MVC的Json结果未显示
我的Ajax块如下所示:C# 使用Ajax的MVC的Json结果未显示,c#,asp.net-mvc,jquery,C#,Asp.net Mvc,Jquery,我的Ajax块如下所示: $('#btnTest').click(function(){ $.getJSON('/User/ViewMessages',function(result) { // TODO: update the DOM with the items $("table#tblMessages").append("<tr><td>"+result.MESSAGETEXT+"</td&g
$('#btnTest').click(function(){
$.getJSON('/User/ViewMessages',function(result) {
// TODO: update the DOM with the items
$("table#tblMessages").append("<tr><td>"+result.MESSAGETEXT+"</td><td>"+result.DATESENT+"</td>");
});
});
调试时,my query变量返回:
{MESSAGETEXT=“seresr”,DATESENT={9/15/2011 11:06:45 AM}
问题是,对于我的两个值,我的表都添加了“undefined”。我哪里出错了?我也已经添加了maproute,但我仍然运气不佳。看起来您正在返回一个列表,它将在JSON中表示为一个数组。因此,您的
结果
对象是一个JavaScript数组,而不是单个对象。要循环浏览所有项目并为每个项目添加一个表行,请尝试以下操作:
$.getJSON('/User/ViewMessages', function(result) {
for (var i in result) {
var row = result[i];
$("table#tblMessages").append("<tr><td>" + row.MESSAGETEXT
+ "</td><td>" + row.DATESENT + "</td>");
}
});
$.getJSON('/User/ViewMessages',函数(结果){
for(结果中的var i){
var行=结果[i];
$(“table#tblMessages”).append(“+row.MESSAGETEXT
+“+row.DATESENT+”);
}
});
$.getJSON('/User/ViewMessages', function(result) {
for (var i in result) {
var row = result[i];
$("table#tblMessages").append("<tr><td>" + row.MESSAGETEXT
+ "</td><td>" + row.DATESENT + "</td>");
}
});