0

我正在使用 AjaxAutoComplete Extender 在旅途中填充城市的值。但我有一个问题。

一切正常,但是当我按向下箭头浏览结果时,它什么也不做,它永远不会从第一个结果移动..我在这里做错了什么..

并且值也填充在网页顶部,而不是文本框下方..之前它工作正常,但现在不行..

ASP.NET

<asp:TextBox ID="fromlocation" runat="server" CssClass="ddl"></asp:TextBox>
<autofill:AutoCompleteExtender 
      ServiceMethod="GetCompletionList" 
      ID="fromlocation_AutoCompleteExtender"
      runat="server"
      DelimiterCharacters=""
      Enabled="True"
      ServicePath="" 
      TargetControlID="fromlocation"
      UseContextKey="True"
      MinimumPrefixLength="2"
      CompletionInterval="10"
      EnableCaching="true"
      CompletionSetCount="3" 
      CompletionListItemCssClass="autocomplete_listItem">
</autofill:AutoCompleteExtender>

C#

[System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]
        public static string[] GetCompletionList(string prefixText, int count, string contextKey)
        {
            SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["connstring"].ToString());
            SqlCommand cmd = new SqlCommand("SELECT  coalesce(Code + ', ', '') + City as codes FROM CCode WHERE City LIKE '" + prefixText + "%'", conn);
            SqlDataReader oReader;
            conn.Open();
            List<string> CompletionSet = new List<string>();
            oReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            while (oReader.Read())
                CompletionSet.Add(oReader["codes"].ToString());
            return CompletionSet.ToArray();

        }
4

1 回答 1

0

上述解决方案在另一个论坛中列出..我通过谷歌搜索发现..

自动完成扩展程序错误

在上面的代码中我只添加了

CompletionListItemCssClass="autocomplete_listItem"

但是在那个论坛中,他们也提到要定义下面的代码..

CompletionListHighlightedItemCssClass="two"

我这样做了,现在我的问题解决了..

于 2013-09-24T09:39:23.917 回答