试图用VB.Net返回asp.net mvc JSONResult

时间:2009-01-15 01:56:28

标签: jquery asp.net-mvc vb.net json

我正在尝试从LINQ2SQL返回一条记录作为JsonResult来通过jquery ajax更新我的视图页面。我将在下面发布我的代码。当我通过调试器跟踪它时,我正在调用控制器中的函数并返回一条记录。我认为我的Jquery可能有问题需要检索JSONResult。有什么想法吗?

查看:

<a href="#" onclick="getProject(<%=project.ID%>)"><img src="<%=project.ThumbPath%>" alt="<%=project.Title%>" /></a>

控制器:

   Function DisplayProjectAjax(ByVal id As Integer) As JsonResult
        Dim project = From p In db.Projects Where p.ID = id
        Return Json(project)
    End Function

Jquery的:

<script type="text/javascript">
    function getProject(id) {
        $(document).ready(function() {
            $.getJSON("/Portfolio/DisplayProjectAjax/" + id,
          {},
          function(data) {
              $("#Title").Text(data.Title);
          });
        }); 
    }

2 个答案:

答案 0 :(得分:2)

尝试:

$("#Title").text(data.Title);

$("#Title").html(data.Title);

注意外壳......此外,Firebug之类的内容也会有所帮助。您可以在Net和Console选项卡中查看所有请求,以及轻松调试Javascript。

答案 1 :(得分:1)

您的查询结果是IEnumerable,它可能被序列化为Project对象数组,即使只有一个。我的VB语法可能不好但是选择了选择所选对象的First()。

return JsonResult( person.First() );

我认为你也需要@JD康利的解决方案。