萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp.net編程 >> .Net 文本框實現內容提示的實例代碼

.Net 文本框實現內容提示的實例代碼

 這篇文章主要介紹了.Net 文本框實現內容提示的實例代碼,需要的朋友可以參考下

1.Demo下載:   文本框實現內容提示(仿Google、Baidu).rar   2.創建數據庫、表(我用的sqlserver2008數據庫)    代碼如下: CREATE TABLE Ceshi (    id VARCHAR(50) PRIMARY KEY NOT NULL,    cname VARCHAR(30)  ) GO  INSERT INTO Ceshi SELECT NEWID(),'jack1' UNION SELECT NEWID(),'jack2' UNION SELECT NEWID(),'jack3' UNION SELECT NEWID(),'jack4' UNION SELECT NEWID(),'jack5' UNION SELECT NEWID(),'peter1' UNION SELECT NEWID(),'peter2' UNION SELECT NEWID(),'peter3' UNION SELECT NEWID(),'peter4' UNION SELECT NEWID(),'peter5'  go     3.創建自定義函數   代碼如下: create function [dbo].[f_GetPy](@str nvarchar(4000)) returns nvarchar(4000) as begin declare @strlen int,@re nvarchar(4000) declare @t table(chr nchar(1) collate Chinese_PRC_CI_AS,letter nchar(1)) insert into @t(chr,letter) select '吖 ', 'A ' union all select '八 ', 'B ' union all    select '嚓 ', 'C ' union all select '咑 ', 'D ' union all    select '妸 ', 'E ' union all select '發 ', 'F ' union all    select '旮 ', 'G ' union all select '铪 ', 'H ' union all    select '丌 ', 'J ' union all select '咔 ', 'K ' union all    select '垃 ', 'L ' union all select '嘸 ', 'M ' union all    select '拏 ', 'N ' union all select '噢 ', 'O ' union all    select '妑 ', 'P ' union all select '七 ', 'Q ' union all    select '呥 ', 'R ' union all select '仨 ', 'S ' union all    select '他 ', 'T ' union all select '屲 ', 'W ' union all    select '夕 ', 'X ' union all select '丫 ', 'Y ' union all    select '帀 ', 'Z '    select @strlen=len(@str),@re= ' '    while @strlen> 0    begin      select top 1 @re=letter+@re,@strlen=@strlen-1      from @t a where chr <=substring(@str,@strlen,1)      order by chr desc      if @@rowcount=0      select @re=substring(@str,@strlen,1)+@re,@strlen=@strlen-1    end    return(@re) end GO     4.asp.net前台頁面(需要添加2個引用:AjaxControlToolkit.dll,AutoCompleteExtra.dll)    代碼如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TextBoxAuto.aspx.cs" Inherits="WebApplication1.TextBoxAuto" %>   <%@ Register Assembly="AutoCompleteExtra" Namespace="AutoCompleteExtra" 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>     <style type="text/css">         .searchTextBox         {             border: 1px solid #e1e1e1;             border-collapse: separate;             border-spacing: 0;             padding: 2px 2px 2px 2px;             white-space: nowrap;             margin-left: 2px;             height: 28px;             line-height: 28px;             margin-right: 5px;             font-family: 微軟雅黑,宋體;             font-size: 14px;         }     </style> </head> <body>     <form id="form1" runat="server">     <asp:ScriptManager ID="ScriptManager1" runat="server">     </asp:ScriptManager>     <asp:UpdatePanel ID="UpdatePanel1" runat="server">         <ContentTemplate>             <div>                 <div class="dd2">                請輸入姓名: <asp:TextBox CssClass="searchTextBox" runat="server" ID="txtCompanyName" Style="width: 280px;"></asp:TextBox>                     <cc1:AutoCompleteExtraExtender ID="AutoCompleteExtraExtender1" runat="server" ServiceMethod="GetCompanyNameList"                         TargetControlID="txtCompanyName" AsyncPostback="false" UseContextKey="True" AutoPostback="false"                         MinimumPrefixLength="1" CompletionInterval="10">                     </cc1:AutoCompleteExtraExtender>                 </div>             </div>         </ContentTemplate>     </asp:UpdatePanel>     </form> </body> </html>       5.後台頁面 代碼如下: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Oceansoft.Net.Bll;   namespace WebApplication1 {     public partial class TextBoxAuto : System.Web.UI.Page     {         protected void Page_Load(object sender, EventArgs e)         {           }           [System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]         public static string[][] GetCompanyNameList(string prefixText, int count, string contextKey)         {             //獲取自動完成的選項數據             List<string[]> list = new List<string[]>();             List<string> nameList = new List<string>();             List<string> idList = new List<string>();             CeshiManage ceshimanage = new CeshiManage();               ceshimanage.GetTopUserName(count, prefixText.ToUpper(), out idList, out nameList);             for (int i = 0; i < nameList.Count; i++)             {                 string[] Respuesta = new string[2];                 Respuesta[0] = nameList[i];                 Respuesta[1] = idList[i];                 list.Add(Respuesta);             }             return list.ToArray();         }     } }     6.後台頁面用到的方法(管理類) 代碼如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web.UI; using Oceansoft.Net.Bll; using SubSonic; using System.Transactions;     using System.Data; using Oceansoft.Net.Dal;       namespace Oceansoft.Net.Bll {     /// <summary>   &nbs
copyright © 萬盛學電腦網 all rights reserved