asp.net AutoCompleteExtender的一个简单例子代码

复制代码 代码如下:


<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;
}
}

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjjsjx.html