我想實現類似google的自動匹配提示功能,
書上寫:使用此控件必須配合寫后端的Web Services,
但是我的理解Web Services是一個中間層,像類一樣提供參數,返回結果,
但是我現在是不是也可以new Web Services的對象,是這樣的嗎?
請大家教我
書上寫:使用此控件必須配合寫后端的Web Services,
但是我的理解Web Services是一個中間層,像類一樣提供參數,返回結果,
但是我現在是不是也可以new Web Services的對象,是這樣的嗎?
請大家教我
Test.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Test.aspx.cs" Inherits="Test" %><%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>未命名頁面</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True"></asp:TextBox>
<cc1:autocompleteextender id="AutoCompleteExtender1" runat="server" targetcontrolid="TextBox1" ServicePath="WebService.asmx" ServiceMethod="GetCompleteList" MinimumPrefixLength="1"></cc1:autocompleteextender>
</div>
</form>
</body>
</html>
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
/// <summary>
/// WebServices 的摘要描述
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]public class WebService : System.Web.Services.WebService
{
private linmoug.DataLogic.DataLogic dl = new linmoug.DataLogic.DataLogic();
DataTable dt = new DataTable();
DataSet ds = new DataSet();
public WebService()
{ //如果使用设计的组件,请取消注释以下行
//InitializeComponent();
} [WebMethod]
public string[] GetCompleteList(string prefixText, int count)
{
ds = dl.ExcuteDataSet("select supplier from tbsupplier where supplier like '" + prefixText + "%'"); string[] supplier = new string[ds.Tables[0].Rows.Count]; for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
supplier[i] = ds.Tables[0].Rows[i][0].ToString();
}
return supplier;
}
}
ajax+你要的结果,就行了。。
当然了要是想做的更好的话,在把统计的数目也可以提示的后面