复制代码 代码如下:
<asp:TextBox runat="server"></asp:TextBox> 
<ajax:AutoCompleteExtender runat="server" BehaviorID="AutoCompleteEx" DelimiterCharacters="" Enabled="True" ServicePath="~/WebService/AutoComplete.asmx" ServiceMethod="GetScenic" TargetControlID="txtTempScenic" CompletionInterval="500" CompletionSetCount="20" EnableCaching="true" MinimumPrefixLength="1"></ajax:AutoCompleteExtender> 
AutoComplete.asmx
复制代码 代码如下:
 
<%@ WebService Language="C#" CodeBehind="~/App_Code/AutoComplete.cs" %> 
AutoComplete.cs
复制代码 代码如下:
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Services; 
using System.Data; 
/// <summary> 
///add by ahuinan 
/// </summary> 
[WebService(Namespace = "http://tempuri.org/")] 
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 
//若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 
[System.Web.Script.Services.ScriptService] 
public class AutoComplete : System.Web.Services.WebService 
{ 
public AutoComplete() 
{ 
//如果使用设计的组件,请取消注释以下行 
//InitializeComponent(); 
} 
[WebMethod] 
public string HelloWorld() 
{ 
return "Hello World"; 
} 
//获得景区 
[WebMethod] 
public string[] GetScenic(string prefixText,int count) 
{ 
ET_ERP.BLL.ERP_ScenicArea b_ScenicArea = new ET_ERP.BLL.ERP_ScenicArea(); 
string strWhere = " SA_Name like '" + prefixText + "%' AND SA_IsDel = 0"; 
DataSet ds = b_ScenicArea.Select(" top "+count+" SA_Name", strWhere); 
count = ds.Tables[0].Rows.Count; 
string[] array = new string[count]; 
for (int i = 0; i < count; i++) 
{ 
array[i] = ds.Tables[0].Rows[i]["SA_Name"].ToString(); 
} 
return array; 
} 
} 
