Ajax的AutoCompleteExtender的使用

本文介绍如何使用Microsoft Ajax工具包中的AutoCompleteExtender控件来实现类似Google搜索的自动提示功能。具体步骤包括安装工具包、配置AutoCompleteExtender属性及编写Webservice代码等。
利用Microsoftajax工具包开发类似与Google搜索的自动提示功能。
可以利用Ajax工具包中的AutoCompleteExtender
具体的使用方法:
1.安装工具包就不用啰唆了;
2. AutoCompleteExtender控件拖入到窗体中,顺便拖一个TextBox
3.设置AutoCompleteExtender属性,主要有下面几个·
TargetControlID:需要绑定的文本框的ID
ServicePathweb service的文件路径
ServiceMethodweb service的方法·
MinimumPrefixLength:输入几个字符开始提示
CompletionInterval:输入字符后多长时间进行提示。默认:1
EnableCaching:是否缓存
CompletionSetCount:列表显示多少行,默认10
4.书写web service代码:看看你的文件是否包含下面这几行代码
[WebService(Namespace = "http://bittime.dyj")]//命名空间,可以任意一个地址
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
//用以调用web service方法签名
//很重要的啊,如果没有将没什么效果的
5.书写webmethod:下面是我自己写的调用数据库的
Count:显示下拉中的纪录数;
prefixText:输入的文本,根据这个和数据库进行匹配。
[WebMethod]
    publicstring[] GetCompletionList(string prefixText, int count)
    {
        if (count == 0)
        {
            count = 10;
        }
        using (SqlConnection connection = newSqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["statictis"].ConnectionString))
        {
            SqlDataAdapter sda = newSqlDataAdapter("select classname,classpath from ipsum_class where classname like '"+prefixText+"%' order by classname",connection);
            DataSet ds = newDataSet();
            sda.Fill(ds);
            List<string> list = newList<string>();
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
               
                list.Add(ds.Tables[0].Rows[i][0].ToString());
            }
            return list.ToArray();
        }
       
    }
按照微软的说法,方法的参数列表(string,int),返回值(string[])必须这样写,但是按照下面的写法也可以成功不知道怎么回事。
publicstring[] GetCompletionList()
    {
        string[] s = new string[] { "Hello","Hell"};
        return s;
    }
 
另外,我还想完全实现Google的功能,不知道写了,谁知道告诉我一下。
1.   输入一个汉字或者字母都可以搜索,而且自动匹配的;
2.   搜索关键词后面的访问量;
3.   下拉框能否进行美化一下。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值