0

因此,我在从我的操作中获取 json 时遇到问题,并希望有人能指出我的错误。

所以,这是我的 jQuery:

$("#ProductSelect").change(function () {
    $.getJSON('Admin/GetProduct?id=' + $(this).val(), function (data) {
        var json = $.parseJSON(data);
        alert(json);
    });
});

这是它调用的操作:

[HttpGet]
    public JsonResult GetProduct(int id)
    {
        var product = new Product();
        product.GetProductById(id);
        return this.Json(product, JsonRequestBehavior.AllowGet);
    }

JS 中的警报一直显示为空。没有 JS 错误(使用 Firebug)。在 Action 上使用断点,我可以看到 Product 已正确填充。有任何想法吗?

4

1 回答 1

0

显然你的控制器使用了一个刚刚初始化的对象,没有任何信息。您是否忘记使用数据库对象然后找到该 id 作为主键?像这样:

[HttpGet]
    public JsonResult GetProduct(int id)
    {
        //private DataContext db
        return Json(db.GetProductById(id), JsonRequestBehavior.AllowGet);
    }
于 2012-12-09T04:28:51.157 回答