我对MVC.net有一个初级Json问题(我从来没有真正使用过jquery或json)所以如果我问一些愚蠢的事,请原谅我。
我有一个带有以下
的javascript文件<script>
function refreshMovies() {
//$.getJSON("/Home/Refresh", showMovies);
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "/Home/Refresh",
success: showMovies
});
}
function showMovies(movie) {
var frag = "<ul>";
frag += "<li>" + movie[0] + " - " + movie[1] + "</li>";
frag += "</ul>";
alert(frag);
$("#divMovies").html(frag);
}
</script>
我的家庭控制器看起来像:
public ActionResult Refresh()
{
return Json(GetMovies()); // Method Returns IList<Movies>
}
我遇到的问题是警报上的碎片以及页面上显示的UL始终为空。
然而,firebug确实显示post请求返回json,所以showMovies()可能出错?
答案 0 :(得分:0)
你说firebug报告说你正确地得到了你的JSon,否则我会问你是否用[HttpPost]修饰了这个动作,因为你正在使用POST方法。
alert()当前是否显示正确的HTML?如果是这样,div是否具有id =“divMovies”属性(注意,此处没有#字符!)。
否则,尝试在showMovies之上移动alert():它会显示任何内容吗?