`
raisun_1988
  • 浏览: 114495 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

asp.net Ajax ---AutoComplete控件使用

    博客分类:
  • .Net
阅读更多
asp.net Ajax ---AutoComplete控件使用 以前见到google和迅雷等网站在搜索文本框中输入文字后能自动提示,感觉这种功能很炫也很实用.现在在学习asp.net ajax 发现AjaxControlToolKit工具包中的AutoComplete控件就能实现这种功能,而且非常简单. 简介: AutoComplete控件就是在用户在文本框输入前几个字母或是汉字的时候,该控件就能从存放数据的文或是数据库里将所有以这些字母开头的数据提示给用户,供用户选择,提供方便. 重要属性 1、TargetControlID:指定要实现提示功能的控件。 2、ServicePath:WebService的路径,提取数据的方法是写在一个WebService中的。 3、ServeiceMethod:写在WebService中的用于提取数据的方法的名字。 4、MinimumPrefixLength:用来设置用户输入多少字母才出现提示效果。 5、CompletionSetCount:设置提示数据的行数。 6、CompletionInterval:从服务器获取书的时间间隔,单位是毫秒。 示例打开vs2005创建一个AjaxControlToolKit网站。在网站的App_Data文件夹下添加文本文件TextFile.txt,并在其中添加数据,如下在网站的根目录下添加一个Web服务,命名为oec2003_AutoComplete,系统自动将Web服务两个部分,设计部分oec2003_AutoComplete.asmx和代码部分oec2003_AutoComplete.cs,其中oec2003_AutoComplete.cs文件自动放入到App_Code目录下。打开oec2003_AutoComplete.cs文件,添加获取数据的方法GetCompleteList,代码如下: 1 usingSystem;2 usingSystem.Web;3 usingSystem.Collections;4 usingSystem.Web.Services;5 usingSystem.Web.Services.Protocols;6 usingSystem.IO;7 8 9 /**////<summary>10 ///AutoComplete的摘要说明11 ///</summary>12 [WebService(Namespace="http://tempuri.org/")]13 [WebServiceBinding(ConformsTo=WsiProfiles.BasicProfile1_1)]14 [System.Web.Script.Services.ScriptService]15 publicclassAutoComplete:System.Web.Services.WebService {16 17 publicAutoComplete() {18 19 //如果使用设计的组件,请取消注释以下行20 //InitializeComponent();21 }22 23 [WebMethod]24 publicstringHelloWorld() {25 return"HelloWorld";26 }27 /**////<summary>28 ///获取数据的方法GetCompleteList29 ///</summary>30 //定义静态数组用于保存获取的数据31 privatestaticstring[]autoCompleteWordList=null;32 [WebMethod]33 publicString[]GetCompleteList(stringprefixText,intcount)34 {35 if(autoCompleteWordList==null)36 {37 string[]temp=File.ReadAllLines(Server.MapPath("~/App_Data/TextFile.txt"));38 Array.Sort(temp,newCaseInsensitiveComparer());39 autoCompleteWordList=temp;40 }41 42 intindex=Array.BinarySearch(autoCompleteWordList,prefixText,newCaseInsensitiveComparer());43 if(index<0)44 {45 index=~index;46 }47 48 intmatchingCount;49 for(matchingCount=0;matchingCount<count&&index+matchingCount<autoCompleteWordList.Length;matchingCount++)50 {51 if(!autoCompleteWordList[index+matchingCount].StartsWith(prefixText,StringComparison.CurrentCultureIgnoreCase))52 {53 break;54 }55 }56 String[]returnValue=newstring[matchingCount];57 if(matchingCount>0)58 {59 Array.Copy(autoCompleteWordList,index,returnValue,0,matchingCount);60 }61 returnreturnValue;62 }63 64 } 由于在上面的代码中使用了File类,所以应该添加如下代码: usingSystem.IO; 因为需要在客户端调用Web服务,还需要添加如下代码 [System.Web.Script.Services.ScriptService] 保存Web 服务的代码打开根目录下默认生成的Default.aspx在页面中拖拽一个TextBox控件和一个AutoCompleteExtender控件。在属性窗口设置AutoCompleteExtender控件的属性,如下 <ajaxToolkit:AutoCompleteExtenderID="AutoCompleteExtender1"runat="server"ServiceMethod="GetCompleteList"ServicePath="oec2003_AutoComplete.asmx"Enabled="true"MinimumPrefixLength="2"CompletionSetCount="10"TargetControlID="TextBox1"></ajaxToolkit:AutoCompleteExtender> 在Web服务中的count参数的值是取CompletionSetCount属性的值。保存设计的页面,将默认页面设置为起始页,按F5运行后在文本框中输入oe,就能看到想要的结果。
分享到:
评论

相关推荐

    ASP.NET AJAX控件之AutoComplete

    ASP.NET AJAX控件之AutoComplete ASP.NET AJAX控件之AutoComplete

    完全手册ASP.NET AJAX实用开发详解 源码

    本书共分为15章,从初识ASP.NET AJAX开始,首先介绍了ASP.NET AJAX基础知识和结构,然后介绍了ASP.NET AJAX Control Toolkit中的全部控件,如AutoComplete、PasswordStrength、CollapsiblePanel、Tabs、...

    ASP.NET AJAX控件之AutoComplete视频+源码

    ASP.NET AJAX控件之AutoComplete

    完全手册:ASP.net Ajax电子教程(9-15章)

     2.5 在线智能输入建议的AutoComplete控件  2.6 弹出式日历选择输入的Calendar控件  2.7 弹出式日历选择输入的PopupControl控件  2.8 控制并验证用户输入格式的MaskedEdit控件  2.9 可选择输入的PopupControl...

    完全手册:ASP.net Ajax电子教程(1-8章)

     2.5 在线智能输入建议的AutoComplete控件  2.6 弹出式日历选择输入的Calendar控件  2.7 弹出式日历选择输入的PopupControl控件  2.8 控制并验证用户输入格式的MaskedEdit控件  2.9 可选择输入的PopupControl...

    完全手册:ASP.net Ajax电子教程-part1

    本书共分为15章,从初识ASP.NET AJAX开始,首先介绍了ASP.NET AJAX基础知识和结构,然后介绍了ASP.NET AJAX Control Toolkit中的全部控件,如AutoComplete、PasswordStrength、CollapsiblePanel、Tabs、...

    完全手册:ASP.net Ajax电子教程-part2

    本书共分为15章,从初识ASP.NET AJAX开始,首先介绍了ASP.NET AJAX基础知识和结构,然后介绍了ASP.NET AJAX Control Toolkit中的全部控件,如AutoComplete、PasswordStrength、CollapsiblePanel、Tabs、...

    完全手册ASP.NETAjax实用开发详解(14-15)

     2.5 在线智能输入建议的AutoComplete控件  2.6 弹出式日历选择输入的Calendar控件  2.7 弹出式日历选择输入的PopupControl控件  2.8 控制并验证用户输入格式的MaskedEdit控件  2.9 可选择输入的PopupControl...

    完全手册:ASP.net Ajax电子教程

    本书共分为15章,从初识ASP.NET AJAX开始,首先介绍了ASP.NET AJAX基础知识和结构,然后介绍了ASP.NET AJAX Control Toolkit中的全部控件,如AutoComplete、PasswordStrength、CollapsiblePanel、Tabs、...

    完全手册:ASP.NET AJAX实用开发详解 part3

    本书共分为15章,从初识ASP.NET AJAX开始,首先介绍了ASP.NET AJAX基础知识和结构,然后介绍了ASP.NET AJAX Control Toolkit中的全部控件,如AutoComplete、PasswordStrength、CollapsiblePanel、Tabs、...

    完全手册:ASP.net.Ajax

    本书共分为15章,从初识ASP.NET AJAX开始,首先介绍了ASP.NET AJAX基础知识和结构,然后介绍了ASP.NET AJAX Control Toolkit中的全部控件,如AutoComplete、PasswordStrength、CollapsiblePanel、Tabs、...

    [.Net 控件] Ajax Control Toolkit

    Using the Ajax Control Toolkit, you can build Ajax-enabled ASP.NET Web Forms applications by dragging-and-dropping Toolkit controls from the Visual Studio Toolbox onto an ASP.NET Web Forms page. ...

    完全手册ASP.NETAjax实用开发详解(1-6)

     2.5 在线智能输入建议的AutoComplete控件  2.6 弹出式日历选择输入的Calendar控件  2.7 弹出式日历选择输入的PopupControl控件  2.8 控制并验证用户输入格式的MaskedEdit控件  2.9 可选择输入的PopupControl...

    完全手册ASP.NETAjax实用开发详解(12-13)

     2.5 在线智能输入建议的AutoComplete控件  2.6 弹出式日历选择输入的Calendar控件  2.7 弹出式日历选择输入的PopupControl控件  2.8 控制并验证用户输入格式的MaskedEdit控件  2.9 可选择输入的PopupControl...

    完全手册ASP.NETAjax实用开发详解(7-8)

     2.5 在线智能输入建议的AutoComplete控件  2.6 弹出式日历选择输入的Calendar控件  2.7 弹出式日历选择输入的PopupControl控件  2.8 控制并验证用户输入格式的MaskedEdit控件  2.9 可选择输入的PopupControl...

    ASP.NET3.5揭秘(卷2)part1

     11.3 使用AutoComplete控件  11.4 使用DragPanel控件  11.5 使用FilteredTextBox控件  11.6 使用MaskedEdit控件  11.7 使用Animation控件  11.8 使用UpdatePanelAnimation控件  11.9 小结  ...

    ASP.NET 3.5 揭秘(卷2).part2

     11.3 使用AutoComplete控件  11.4 使用DragPanel控件  11.5 使用FilteredTextBox控件  11.6 使用MaskedEdit控件  11.7 使用Animation控件  11.8 使用UpdatePanelAnimation控件  11.9 小结  ...

    完全手册ASPNETAjax 实用开发详解(9-11)

     2.5 在线智能输入建议的AutoComplete控件  2.6 弹出式日历选择输入的Calendar控件  2.7 弹出式日历选择输入的PopupControl控件  2.8 控制并验证用户输入格式的MaskedEdit控件  2.9 可选择输入的PopupControl...

    完全手册ASP、NET AJAX实用开发详解光盘

    本书共分为15章,从初识ASP.NET AJAX开始,首先介绍了ASP.NET AJAX基础知识和结构,然后介绍了ASP.NET AJAX Control Toolkit中的全部控件,如AutoComplete、PasswordStrength、CollapsiblePanel、Tabs、...

Global site tag (gtag.js) - Google Analytics