MVC 4和jQuery getJSON

时间:2013-01-27 14:07:18

标签: jquery asp.net-mvc-4 getjson

我必须在大学的项目中实施某种实时搜索。我有以下代码: MVC行动:

[Authorize]  
[AcceptVerbs(HttpVerbs.Get)]  
[InitializeSimpleMembership]
public JsonResult Search(string term)  
{  
    var data = ... // get matching item  
    return Json(data, JsonRequestBehavior.AllowGet);  
}  

视图中的脚本:

$(document).ready(function() {  
    $("#searchText").keyup(function() {  
        $.getJSON('/Search/Search', { "term": $(this).val() },  function(result) {   
            alert(result);    
            $("#searchText").val(result.d);  
        });  
    });  
});

调用控制器操作并返回匹配的对象,但是从不调用javascript函数,没有警报框,什么也没有。有什么办法可以使这项工作?

1 个答案:

答案 0 :(得分:3)

您的数据的JSON序列化可能存在问题。如果您尝试直接序列化可能包含循环引用的EF域模型,则通常会发生这种情况......当然,正确的方法是使用视图模型。

为了跟踪问题,请使用FireBug并查看Network标签,以查看AJAX调用的确切请求/响应。在那里,您将能够看到服务器返回的响应,其中包含错误消息。