jQuery做个TextBox自动完成条

简介:

      刚开始学jQuery,于是想试试学习效果,所以就做了个这个TextBox自动完成条,练习练习。请牛人们别笑话。

代码如下:

 


  1   
  2  
  3DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  4<html xmlns="http://www.w3.org/1999/xhtml">   
  5<head runat="server">   
  6    <title>无标题页</title>   
  7    <mce:style type="text/css"></mce:style><style type="text/css" mce_bogus="1">        .mouseEnter   
 14        {   
 15            background-color: Yellow;   
 16        }
   
 17       
 18--></mce:style><style type="text/css" mce_bogus="1">        .mouseEnter   
 19        {   
 20            background-color: Yellow;   
 21        }
   
 22       
 23--></mce:style><style type="text/css" mce_bogus="1">        .mouseEnter   
 24        {   
 25            background-color: Yellow;   
 26        }
   
 27    </style>   
 28    <mce:script type="text/javascript" src="SCRIPT/jquery-1.3.2-vsdoc2.js" mce_src="SCRIPT/jquery-1.3.2-vsdoc2.js">   
 39</head>   
 40<body >   
 41    <form id="form1" runat="server" onsubmit="alert($('#TextBox1').val());">   
 42    <center><asp:TextBox ID="TextBox1" runat="server" width="137px"  ></asp:TextBox></center>   
 43    <div id="result" style="width: 147px;">   
 44        <table style="width: 100%; border-style: none solid solid solid; border-width: 1px;   
 45            border-color: #00FF00">   
 46            <tbody id="mytable">   
 47            </tbody>   
 48        </table>   
 49         </div>   
 50    </form>   
 51    <mce:script type="text/javascript">   
143</body>   
144</html>  
145
146
147DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
148<html xmlns="http://www.w3.org/1999/xhtml">
149<head runat="server">
150    <title>无标题页</title>
151    <mce:style type="text/css"></mce:style><style type="text/css" mce_bogus="1">        .mouseEnter
158        {
159            background-color: Yellow;
160        }

161    
162--></mce:style><style type="text/css" mce_bogus="1">        .mouseEnter
163        {
164            background-color: Yellow;
165        }

166    
167--></mce:style><style type="text/css" mce_bogus="1">        .mouseEnter
168        {
169            background-color: Yellow;
170        }

171    </style>
172    <mce:script type="text/javascript" src="SCRIPT/jquery-1.3.2-vsdoc2.js" mce_src="SCRIPT/jquery-1.3.2-vsdoc2.js">
183</head>
184<body >
185    <form id="form1" runat="server" onsubmit="alert($('#TextBox1').val());">
186    <center><asp:TextBox ID="TextBox1" runat="server" width="137px"  ></asp:TextBox></center>
187    <div id="result" style="width: 147px;">
188        <table style="width: 100%; border-style: none solid solid solid; border-width: 1px;
189            border-color: #00FF00">
190            <tbody id="mytable">
191            </tbody>
192        </table>
193         </div>
194    </form>
195    <mce:script type="text/javascript">
287</body>
288</html>
289
290 
291
292Ajax调用的一般处理程序为:
293
294  view plaincopy to clipboardprint?
295   
296  
297using System;   
298using System.Web;   
299using System.Linq;   
300using System.Xml;   
301using System.Xml.Linq;   
302  
303public class Suggest : IHttpHandler   
304{   
305  
306    public void ProcessRequest(HttpContext context)   
307    {   
308        HttpResponse Response = context.Response;   
309        Response.Charset = "gb2312";   
310        Response.ContentEncoding = System.Text.Encoding.UTF8;   
311        Response.ContentType = "text/plain";   
312        Response.StatusCode = 200;   
313        string start = context.Request.Params["word"].ToString();   
314        Response.Write(GetSuggest(start));   
315        Response.Flush();   
316    }
   
317  
318    public bool IsReusable   
319    {   
320        get  
321        {   
322            return false;   
323        }
   
324    }
   
325  
326    ///    
327    /// 获取响应字符串   
328    ///    
329    /// 查询起始字符串   
330    /// 响应字符串   

331    private string GetSuggest(string start)   
332    {   
333        XElement root = XElement.Load(AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "Suggest.xml");   
334        System.Collections.Generic.IEnumerable<string>   
335                                q = (from r in root.Elements()   
336                                     where (r.Name).ToString().ToLower().StartsWith(start.ToLower())   
337                                     select r.Name.ToString()).Take(5);   
338        System.Text.StringBuilder sb = new System.Text.StringBuilder();   
339        foreach (string w in q)   
340        {   
341            sb.Append(w + ";");   
342        }
   
343        if (sb.Length != 0)   
344            sb.Remove(sb.Length - 11);   
345        return sb.ToString();   
346    }
   
347           
348  
349}
  
350
351
352using System;
353using System.Web;
354using System.Linq;
355using System.Xml;
356using System.Xml.Linq;
357
358public class Suggest : IHttpHandler
359{
360
361    public void ProcessRequest(HttpContext context)
362    {
363        HttpResponse Response = context.Response;
364        Response.Charset = "gb2312";
365        Response.ContentEncoding = System.Text.Encoding.UTF8;
366        Response.ContentType = "text/plain";
367        Response.StatusCode = 200;
368        string start = context.Request.Params["word"].ToString();
369        Response.Write(GetSuggest(start));
370        Response.Flush();
371    }

372
373    public bool IsReusable
374    {
375        get
376        {
377            return false;
378        }

379    }

380
381    /// 
382    /// 获取响应字符串
383    /// 
384    /// 查询起始字符串
385    /// 响应字符串

386    private string GetSuggest(string start)
387    {
388        XElement root = XElement.Load(AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "Suggest.xml");
389        System.Collections.Generic.IEnumerable<string>
390                                q = (from r in root.Elements()
391                                     where (r.Name).ToString().ToLower().StartsWith(start.ToLower())
392                                     select r.Name.ToString()).Take(5);
393        System.Text.StringBuilder sb = new System.Text.StringBuilder();
394        foreach (string w in q)
395        {
396            sb.Append(w + ";");
397        }

398        if (sb.Length != 0)
399            sb.Remove(sb.Length - 11);
400        return sb.ToString();
401    }

402        
403
404}

405

其中xml文档其实也不是什么标准的xml文档,就是拿来存储数据,练习练习刚学的Linq to XML。由于不想建表,本人也许有点懒惰吧,xml文档内容都是随机产生的:所以下面的效果显示的结果都是随机生成的;不说了。来个图例:


作者:破  狼 
出处:http://www.cnblogs.com/whitewolf/ 
本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。该文章也同时发布在我的独立博客中-个人独立博客博客园--破狼51CTO--破狼。http://www.cnblogs.com/whitewolf/archive/2009/07/25/1531039.html

相关文章
|
JavaScript 前端开发 Android开发
jQuery自动完成点击html元素
1 /************************************************************************** 2 * jQuery自动完成点击html元素 3 * 声明: 4 * 本来是想让嵌入产品完成自动检测,但是这种方法在Qt4.8的WebView控件中 5 * 不能够正确的执行,目前不知道为什么。
804 0
|
JavaScript 前端开发 .NET
从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件
原文:从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件 本系列文章导航 从零开始学习jQuery (一) 开天辟地入门篇 从零开始学习jQuery (二) 万能的选择器 从零开始学习jQuery (三) 管理jQuery包装集 从零开始学习jQuery (四) 使用...
1235 0
|
JavaScript
jquery ui autocomplete输入中文不自动完成的问题
因为输入法或浏览器的问题,在输入中文后并没有触发自动完成,要再按多一下键盘才触发,查看发现它是用keydown来实现.bind("keydown.autocomplete", function(event) {.
1126 0
|
前端开发 JavaScript 测试技术
优秀的 jQuery 文本输入框自动完成 & 自动提示插件
  文框输入框的自动完成和自动提示功能可以帮助用户快速的完成操作,是非常好的产品使用体验。这里向大家推荐一款优秀的 jQuery 文本输入框自动完成 & 自动提示插件,帮助你在网站中轻松添加输入框的自动完成和自动提示功能。
1249 0
|
JavaScript
Jquery主要控件的取值、赋值,包括textbox,button,lable,radio,chec
textbox:var str = $('#txt').val();  $('#txt').val("Set Lbl Value");   //文本框,文本区域: $("#text_id").
1179 0
|
JavaScript API 前端开发
jQuery 折叠,自动完成,小提示,树,验证插件(bassistance.de)
http://bassistance.de/jquery-plugins/ jQuery plugins This page lists jQuery plugins I’ve written.
|
2月前
jQuery+Slick插件实现游戏人物轮播展示切换源码
jQuery+Slick插件实现游戏人物轮播展示切换源码
46 14