主頁 > 知識(shí)庫 > .Net 文本框?qū)崿F(xiàn)內(nèi)容提示的實(shí)例代碼(仿Google、Baidu)

.Net 文本框?qū)崿F(xiàn)內(nèi)容提示的實(shí)例代碼(仿Google、Baidu)

熱門標(biāo)簽:云狐人工智能電話機(jī)器人 ai電銷機(jī)器人對貸款有幫助嗎 廣州銷售外呼系統(tǒng)定制 福州人工智能電銷機(jī)器人加盟 怎樣給陜西地圖標(biāo)注顏色 宿遷智能外呼系統(tǒng)排名 電銷機(jī)器人 數(shù)據(jù) 地圖標(biāo)注多少錢一張 400電話辦理信任翰諾科技

1.Demo下載:

文本框?qū)崿F(xiàn)內(nèi)容提示(仿Google、Baidu).rar

2.創(chuàng)建數(shù)據(jù)庫、表(我用的sqlserver2008數(shù)據(jù)庫)

復(fù)制代碼 代碼如下:

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.創(chuàng)建自定義函數(shù)

復(fù)制代碼 代碼如下:

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ā) ', '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前臺(tái)頁面(需要添加2個(gè)引用:AjaxControlToolkit.dll,AutoCompleteExtra.dll)

復(fù)制代碼 代碼如下:

%@ 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.后臺(tái)頁面

復(fù)制代碼 代碼如下:

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)
        {
            //獲取自動(dòng)完成的選項(xiàng)數(shù)據(jù)
            Liststring[]> list = new Liststring[]>();
            Liststring> nameList = new Liststring>();
            Liststring> idList = new Liststring>();
            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.后臺(tái)頁面用到的方法(管理類)
復(fù)制代碼 代碼如下:

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>
    /// :ceshi
    /// :jibp
    /// :2014-2-27 15:52:15
    ////summary>
    public class CeshiManage
    {

        private SqlQuery m_sqlquery = Oceansoft.Net.Dal.DB.Select().From(Ceshi.Schema);

        /// summary>
        /// Ceshi查詢器
        /// /summary>
        public SqlQuery CeshiSelecter
        {
            get { return m_sqlquery; }
            set { m_sqlquery = value; }
        }


        /// summary>
        /// 構(gòu)造函數(shù),設(shè)置查詢器
        ////summary>
        public CeshiManage()
        {
            m_sqlquery = m_sqlquery.Where("id").IsNotEqualTo("");
        }


        #region Ceshi管理

        /// summary>
        /// 獲取ceshi列表
        /// /summary>
        /// returns>/returns>
        public ListCeshi> getCeshiList()
        {

            return CeshiSelecter.ExecuteTypedListCeshi>();
        }


        /// summary>
        /// 獲取ceshi列表,同時(shí)分頁操作
        /// /summary>
        /// returns>/returns>
        public ListCeshi> getCeshiList(int currentPage, int pageSize, out int RecordCount)
        {
            RecordCount = m_sqlquery.GetRecordCount();
            return CeshiSelecter
            .Paged(currentPage, pageSize)
            .ExecuteTypedListCeshi>();
        }

 

 

        /// summary>
        /// 新增 ceshi
        /// /summary>
        /// param name="HandleEntity">/param>
        /// param name="sErr">/param>
        /// returns>/returns>
        public bool AddCeshi(Ceshi beAddMode, out string sErr)
        {

            sErr = "";
            bool bRet = true;
            try
            {

                using (TransactionScope sc = new TransactionScope())
                {
                    //此處寫代碼
                    //流水編號(hào)的生成
                    //GenerateNo No = new GenerateNo();
                    //No.TableName = "Ceshi"; //表名
                    //No.NoName = "XXX";   //流水號(hào)前字母
                    //No.ColName = "CC_Number";  //編號(hào)字段
                    //No.CreateTime = "CC_CreateTime";  //日期字段
                    //string BillNo = "";
                    //Customer_Comp.CC_Number = No.AutoGenerateNo();
                    beAddMode.IsNew = true;
                    beAddMode.Save();
                    //LogHelper.WriteLog(logType.新增 , logModule.Deptrelation,"ceshi新增成功("+beAddMode.GetPrimaryKeyValue().ToString()
                    //+")!");
                    //如果生成擴(kuò)展類請使用add方法方法
                    sc.Complete();
                }
            }
            catch (Exception ex)
            {
                sErr = "ceshi新增不成功!";
                return false;
            }

            sErr = "ceshi新增成功!";
            return bRet;


        }

 

        /// summary>
        /// 修改 ceshi
        /// /summary>
        /// param name="HandleEntity">/param>
        /// param name="sErr">/param>
        /// returns>/returns>
        public bool UpdataCeshi(Ceshi beUpdataMode, out string sErr)
        {

            sErr = "";
            bool bRet = true;
            try
            {

                using (TransactionScope sc = new TransactionScope())
                {

                    //如果生成擴(kuò)展類請使用Update()方法方法
                    beUpdataMode.IsNew = false;
                    beUpdataMode.Save();
                    //LogHelper.WriteLog(logType.修改 , logModule.Deptrelation,"ceshi修改成功("+beUpdataMode.GetPrimaryKeyValue().ToString()
                    //+")!");

                    sc.Complete();
                }
            }
            catch (Exception ex)
            {
                sErr = "ceshi修改不成功!";
                return false;
            }

            sErr = "ceshi修改成功!";
            return bRet;

        }

 


        /// summary>
        /// 刪除 ceshi
        /// /summary>
        /// param name="HandleEntity">/param>
        /// param name="sErr">/param>
        /// returns>/returns>
        public bool DeleteCeshi(Ceshi beDeleteMode, out string sErr)
        {
            sErr = "";
            bool bRet = true;
            try
            {

                using (TransactionScope sc = new TransactionScope())
                {
                    //如果生成擴(kuò)展類請使用Delete()方法方法
                    Ceshi.Delete(beDeleteMode.GetPrimaryKeyValue());
                    //LogHelper.WriteLog(logType.刪除 , logModule.Deptrelation,"ceshi刪除成功("+beDeleteMode.GetPrimaryKeyValue().ToString()
                    //+")!");
                    sc.Complete();
                }
            }
            catch (Exception ex)
            {
                sErr = "ceshi刪除不成功!";
                return false;
            }

            sErr = "ceshi刪除成功!";
            return bRet;

        }


        /// summary>
        /// 刪除 ceshi 列表
        /// /summary>
        /// param name="HandleEntity">/param>
        /// param name="sErr">/param>
        /// returns>/returns>
        public bool DeleteCeshiList(ListCeshi> lstCeshi, out string sErr)
        {


            sErr = "";
            int ii = 0;
            bool bRet = true;
            try
            {

                using (TransactionScope sc = new TransactionScope())
                {
                    //如果生成擴(kuò)展類請使用Delete()方法方法
                    foreach (Ceshi bedelmode in lstCeshi)
                    {
                        ii++;
                        Ceshi.Delete(bedelmode.GetPrimaryKeyValue());

                        //LogHelper.WriteLog(logType.刪除 , logModule.Deptrelation,"ceshi刪除成功("+bedelmode.GetPrimaryKeyValue().ToString()
                        //+")!");
                    }
                    sc.Complete();
                }
            }
            catch (Exception ex)
            {
                sErr = "ceshi刪除不成功!";
                return false;
            }

            sErr = "共" + ii.ToString() + "條單據(jù)刪除成功!";
            return bRet;

 


        }

        public  void GetTopUserName(int topCount, string name, out Liststring> listId, out  Liststring> listcname)
        {
            string sql = string.Format(@"Select id,cname from(Select ROW_NUMBER() over(order by cname)as ROWNUM," +
                "id,cname FROM [dbo].[Ceshi] where cname like '%" + name + "%' or  dbo.f_GetPy(cname) like '%" + name + "%') as ta where ta.ROWNUM = " + topCount);
            DataTable dt = new DataTable();
            QueryCommand qc = new InlineQuery().GetCommand(sql);
            dt = DataService.GetDataSet(qc).Tables[0];//將查詢出來的數(shù)據(jù)集放到List中去(查詢數(shù)據(jù)的方法,有很多,這邊我用的是Subsonic類自帶的查詢方法)
            listcname = new Liststring>();
            listId = new Liststring>();
            foreach (DataRow row in dt.Rows)
            {

                listId.Add(row[0].ToString());
                listcname.Add(row[1].ToString());

            }

        }

       #endregion

    }
}

7.webconfig配置

復(fù)制代碼 代碼如下:

?xml version="1.0"?>

!--
  有關(guān)如何配置 ASP.NET 應(yīng)用程序的詳細(xì)信息,請?jiān)L問
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->

configuration>
  configSections>
    section name="SubSonicService" type="SubSonic.SubSonicSection, SubSonic" requirePermission="false"/>
  /configSections>
  connectionStrings>
    add name="DemoTo" connectionString="Data Source=172.17.118.197;Initial Catalog=DemoTo;User Id=sa;Password=password01!;" providerName="System.Data.SqlClient"/>
  /connectionStrings>
  SubSonicService defaultProvider="DemoTo">
    providers>

      add name="DemoTo" type="SubSonic.SqlDataProvider, SubSonic" connectionStringName="DemoTo" generatedNamespace="Oceansoft.Net" maxPoolSize="2000"/>

    /providers>
  /SubSonicService>

  system.web>
    compilation debug="true" targetFramework="4.0" />

    authentication mode="Forms">
      forms loginUrl="~/Account/Login.aspx" timeout="2880" />
    /authentication>

    membership>
      providers>
        clear/>
        add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
             enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
             maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
             applicationName="/" />
      /providers>
    /membership>

    profile>
      providers>
        clear/>
        add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
      /providers>
    /profile>

    roleManager enabled="false">
      providers>
        clear/>
        add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
        add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
      /providers>
    /roleManager>

  /system.web>

  system.webServer>
    modules runAllManagedModulesForAllRequests="true"/>
  /system.webServer>
/configuration>

標(biāo)簽:延安 焦作 宜春 曲靖 黃南 大興安嶺 綿陽 新疆

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《.Net 文本框?qū)崿F(xiàn)內(nèi)容提示的實(shí)例代碼(仿Google、Baidu)》,本文關(guān)鍵詞  .Net,文本,框,實(shí)現(xiàn),內(nèi)容,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《.Net 文本框?qū)崿F(xiàn)內(nèi)容提示的實(shí)例代碼(仿Google、Baidu)》相關(guān)的同類信息!
  • 本頁收集關(guān)于.Net 文本框?qū)崿F(xiàn)內(nèi)容提示的實(shí)例代碼(仿Google、Baidu)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章