MVC 4和jQuery getJSON

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

[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函数从不被调用,没有警报框,什么也没有。 有什么办法让这项工作成功?

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

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