我正在尝试从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);
});
});
}
答案 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康利的解决方案。