我第一次练习MVC asp.net,我试图通过Jquery $ .ajax或$ .getJSON方法获取从Controller到View的产品列表,下面是控制器中的函数:
public ActionResult List()
{
Dictionary<string, List<Product>> dict = new Dictionary<string, List<Product>> {{"pList", PList}};
return Json(dict,JsonRequestBehavior.AllowGet);
}
和ajax函数是:
$(window).load(function () {
$.ajax({
url: '@Url.Action("List", "Product")',
type: "GET",
cache: false,
success: function (data) {
$("#div").append("<table><tr><td>ID</td><td>Name</td><td>Description</td><td>Price</td></tr>");
data.pList.each(function () {
$("#div").append("<tr>");
$(this).each(function () {
$("#div").append("<td>" + $(this).Id() + "</td>");
$("#div").append("<td>" + $(this).Name() + "</td>");
$("#div").append("<td>" + $(this).Description() + "</td>");
$("#div").append("<td>" + $(this).Price() + "</td>");
});
$("#div").append("</tr>");
});
$("#div").append("</table>");
}
});
});
on loading \ Product \ List它在浏览器上呈现List.json文件,而不是重定向到\ Product \ List并创建动态表,如ajax的success函数所示。我按照许多教程说明了这种方法是正确的。
答案 0 :(得分:0)
load(function(){ $就({ url:'/ List / product', 类型:“GET”, cache:false, 成功:函数(数据){ $( “#DIV”)追加 “(IDNameDescriptionPrice”); data.pList.each(function(){ $( “#DIV”)追加( “”); $(this).each(function(){ $(“#div”)。append(“”+ $(this).Id()+“”); $(“#div”)。append(“”+ $(this).Name()+“”); $(“#div”)。append(“”+ $(this).Description()+“”); $(“#div”)。append(“”+ $(this).Price()+“”); }); $( “#DIV”)追加( “”); }); $( “#DIV”)追加( “”); } }); });`