0

我有一个动态数据网站,我试图在其中添加一个带有 AutoCompleteExtender 的文本框。我已经像这样声明了控件

<asp:TextBox ID="tbTerm" runat="server" Width="300px"/>
  <asp:AutoCompleteExtender runat="server"
       id="autoCompleteExtenderTerms"
       TargetControlID="tbTerm" 
       ServiceMethod="GetCompletionList" 
       UseContextKey="True">
  </asp:AutoCompleteExtender>

在该页面的代码隐藏中,我已经像这样声明了 web 方法

[System.Web.Services.WebMethod]
[System.Web.Script.Services.ScriptMethod]
public static List<string> GetCompletionList(string prefixText, int count)
{
    using (ProductDataEntities context = new ProductDataEntities())
    {
        var terms = (from t in context.Terms
                     where t.Name.StartsWith(prefixText, StringComparison.CurrentCultureIgnoreCase)
                     select t.Name).ToList();

        return terms;
    }
}

目前这个方法没有被调用,这不是一个伪造的键列,所以我不能为此使用标准过滤器。

我已确保在 ScriptManager 上设置了 EnablePageMethods="true" 并且我不知道为什么没有从页面中触发此方法。控制没有包含在更新面板中,对此我没有什么特别之处.

4

1 回答 1

0

设置ServicePath属性值。

于 2012-08-30T04:32:57.937 回答