2016-09-15 2 views
0

У меня возникли проблемы с ajax autoCompleteExtender.простой asp.net autocompleteExtender не работает

.aspx файл

<asp:toolkitscriptmanager runat="server" ID ="scropt" EnablePageMethods ="true" EnablePartialRendering ="true"> 
     </asp:toolkitscriptmanager> 


     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 

     <asp:AutoCompleteExtender ID="AutoCompleteExtender1" MinimumPrefixLength="2" TargetControlID ="TextBox1" 
      ServiceMethod="GetCompletionList" runat="server" CompletionInterval ="100"></asp:AutoCompleteExtender> 

.Aspx.cs файл

[System.Web.Script.Services.ScriptMethod] 
     [System.Web.Services.WebMethod] 
     public static string[] GetCompletionList(string prefixText, int count) 
     { 

      System.Diagnostics.Debug.WriteLine("prefix:" + prefixText); 
      List<string> list = new List<string>(); 

      list.Add("hello"); 
      list.Add("world"); 
      list.Add("everyone"); 

      return list.ToArray(); 
     } 

Намеченный поведение этого кода должен был иметь текстовое поле раскрывающегося списка список строковых значений возврата при входе 2 буквы в текстовое окно. Однако этого не происходит. Я использовал fiddler для отслеживания моего HTTP-запроса и понял, что текстовое поле не запускает никаких HTTP-запросов на сервер. Кто-нибудь знает причину этого или что-то не так с моим кодом?

+0

Я думаю, что вы используете устаревшую версию toolkitscriptmanager..try с использованием новейших Ajax Toolkit и использовать ScriptManager вместо toolkitscritptmanager –

+0

Вы проверили это с помощью диспетчера сценариев asp.net control.please проверьте эту ссылку, это может быть полезно для you.http: //www.aspsnippets.com/Articles/AJAX-AutoCom pleteExtender-пример-в-ASPNet.aspx –

ответ

0

@weejing Я запускаю ваш код, он отлично работает. Если возникла путаница, вы скопируете мой код.

ASPX код

<body> 
     <form id="form1" runat="server"> 
     <cc1:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"> 
    </cc1:ToolkitScriptManager> 
     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
     <cc1:AutoCompleteExtender ID="AutoCompleteExtender1" MinimumPrefixLength="1" TargetControlID ="TextBox1" 
       ServiceMethod="GetCompletionList" runat="server" CompletionInterval ="100"> 
    </cc1:AutoCompleteExtender> 
     </form> 
    </body> 

aspx.cs код

[System.Web.Script.Services.ScriptMethod] 
     [System.Web.Services.WebMethod] 
     public static string[] GetCompletionList(string prefixText, int count) 
     { 

      System.Diagnostics.Debug.WriteLine("prefix:" + prefixText); 
      List<string> list = new List<string>(); 

      list.Add("hello"); 
      list.Add("world"); 
      list.Add("everyone"); 

      return list.ToArray(); 
     } 
Смежные вопросы