2013-09-07 1 views
0

사용자 목록 검색을 위해 앱에 자동 완성 기능을 구현했지만 사용자를 검색 할 때 목록이 표시되지 않습니다. 내보기에ASP.Net MVC Jquery 자동 완성 - 목록이 표시되지 않습니다.

<link href="@Url.Content("~/Content/themes/base/jquery.ui.all.css")" rel="stylesheet" type="text/css" /> 
<script src="~/Scripts/jquery-2.0.3.js" type="text/javascript"></script> 
<script src="~/Scripts/jquery-ui-1.10.3.js" type="text/javascript"></script> 

:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $(function() { 
      $('#txtListUsers').autocomplete({ 
       source: '@Url.Action("GetJsonUsers","GestioneLega")', 
       minLength: 2 
      }); 
     }); 
    }) 
</script> 
... 
<input type="text" id="txtListUsers" /> 

내 작업 :

public JsonResult GetJsonUsers(string term) 
{ 
    var users = GestServices.GetUsersForAutocomplete(term); 
    return Json(users, JsonRequestBehavior.AllowGet); 
} 

데이터 가져 오기 :

public static object GetUsersForAutocomplete(string searchTerm) 
{ 
    object users = null; 

    using (var db = new FriendsContext()) 
    { 
     users = from cust in db.Users.Where(c => c.UserName.StartsWith(searchTerm)) 
         select cust.UserName; 
    } 
    return users; 
} 
내 _Layout.cshtml에서

GetJsonUsers 함수가 작동하지 않습니다. 더 많은 테스트를 수행하면서 GetUsersForAutocomplete 함수에서 변수 "users"가 사용 범위에만 채워져 있음을 발견했습니다. DbContext가

배치되어 있기 때문에 작업을 완료 할 수 없습니다 나는 당신이 GetJsonUsers에 중단 점을 설정할 수 있습니다 The operation cannot be completed because the DbContext has been disposed error

답변

0

이 토론을 수행하여이 문제를 해결 : 나는 범위를 사용에서 사용자에 대한 즉각적인 제어를 할 경우, 취득 오류까지 추적하십시오. f12를 사용하여 브라우저로 돌아 오는 내용을 확인할 수도 있습니다.

+0

함수 GetJsonUsers 작동합니다. 내 브라우저에서 (f12 사용) 새 요소/태그가 표시되지 않습니다. – Tommaso

0

할 일을 다음과 같이

 $('#txtListUsers').autocomplete({ 
      source:function(request, response) { 
       $.ajax({ 
       url: "@Url.Action("YourActionName","YourControllerName")", 
       dataType: "json", 
       data: {}, 
       success: function(data) { 
       response($.map(data, function(item) { 
        return { 
         label: item.name, 
         value: item.name 
          } 
         })); 
       } 
      }); 
      }, 
      minLength: 2 
     }); 
+0

안녕하세요, 심지어 작동하지 않습니다 – Tommaso

+0

디버깅을하고 데이터가 아약스의 성공 호출에서 수신되는 것을 보았습니까? –

+0

불행히도, 중단 점을 설정하더라도 작동하지 않습니다. – Tommaso

관련 문제