日期:2014-05-18  浏览次数:20538 次

AutoCompleteExtender用法
这个就是在文本框输入后查出数据库表中相对应的文字
<cc1:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server" ServiceMethod="GetCusNameList" MinimumPrefixLength="1" 
  TargetControlID="txtCusName" CompletionSetCount="10" UseContextKey="True">
  </cc1:AutoCompleteExtender>

前台是这样写的

 [System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]
  public static string[] GetCusNameList(string prefixText, int count, string contextKey)
  {
  return BLL.Customer.prefixInfo("Customer", "CusName", prefixText);
  }  
后台是这样。但怎么才会触发这里呀。还是我写的有问题。高手帮我改改

------解决方案--------------------
确认你的WebService方法被调用了
------解决方案--------------------
不知道你是用的Webservices还是直接写在后台.cs文件中的,但我看你不触发的原因是在前台
<cc1:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server" ServiceMethod="GetCusNameList" MinimumPrefixLength="1" 
TargetControlID="txtCusName" CompletionSetCount="10" UseContextKey="True"> 
</cc1:AutoCompleteExtender> 
这个中没有指定脚本的路径,如果你用的是Webservices需要指定ServicePath,如果是.cs需要指定scriptPath才能触发