2014-09-11 3 views
0

사용자가 일부 이름을 검색했지만 작동하지 않을 때 자동 완성되는 텍스트 상자를 만들려고합니다.자동 완성이 asp.net mvc에서 작동하지 않습니다

<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/cupertino/jquery-ui.css" type="text/css" rel="Stylesheet" /> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script> 
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
      $(document).ready(function() { 
       $("#txtSearch").autocomplete({ 
        source: '@Url.Action("pesquisarUsuario")', 
        minLength: 0 
       }); 
      }); 
    </script> 






<h2>Index</h2> 


@using (@Html.BeginForm()) 
{ 
    @Html.TextBox("pesquisa", null, new { id = "txtPesq" }) 
    <input type="submit" value="Pesquisar" /> 



} 

그리고 여기 내 컨트롤러입니다 :

public JsonResult pesquisarUsuario(string term) 
      { 
       List<string> usuario; 

       usuario = db.usuario.Where(u => u.nomecompleto.StartsWith(term)) 
        .Select(u => u.nomecompleto).ToList(); 

       return Json(usuario, JsonRequestBehavior.AllowGet); 
      } 

오전 내가 모르는 뭔가가 여기 내이다? 왜냐하면 필기를 시작할 때 내 텍스트 상자에 사용자가 표시되지 않기 때문입니다.

+1

당신은'$을하고을 ("# txtSearch "). 자동 완성 ('하지만 텍스트 상자의 ID는'txtPesq' 인 것 같습니다. – tweray

+0

다른 코드를 시도했기 때문에 txtPesq로 바뀌었고 여전히 작동하지 않습니다. –

답변

1

처음 시도하면 usuario이 반환됩니다. 브라우저에서

봅니다 :-) : http://localhost:port/yourcontroller/pesquisarUsuario?term=t

그것은 모든 레코드와 't'시작 반환해야합니다.

아무 것도 표시되지 않으면 여기에 문제가 있습니다.

만약 그렇다면, 전체 URL 설정하려고 : 나는 완전히 동작하는 예제와이 튜토리얼 만든 :

$(document).ready(function() { 
    $("#txtSearch").autocomplete({ 
     source: 'http://yourserver/yourcontroller/pesquisarUsuario', 
     minLength: 0 
    }); 
}); 

편집http://r2d2.cc/2014/09/11/autocomplete-jquery-ui-with-asp-net-mvc-simple-example/

+0

usuario가 잘 작동하고 있습니다. 소스처럼했지만 작동하지 않습니다.이 자습서를 따랐습니다. [link] (https://www.youtube.com/watch?v=quQgUNteWxY) 내가 누락 된 부분을 모르겠다 ... –

+0

자동 완성 기능을 어떻게 보여줄 수 있습니까? 그것은 단순한 것 같아요. 나는 누군가의 이름을 써야만하며, 텍스트 상자는 그 이름을 가진 사용자를 보여 주어야합니다. –

+1

도와 주실 수 있나요? –

관련 문제