十、AutoComplete——自动完成

2024-01-19 07:32
文章标签 完成 自动 autocomplete

本文主要是介绍十、AutoComplete——自动完成,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AutoComplete自动完成,当用户输入字符后,会自动匹配出可能的结果供用户选择,google或百度的输入框就有这种功能。

 

举例如下:

1.       拖入一个ScriptManage控件

2.       拖入一个TextBox控件

3.       拖入一个AutoComplete控件:

        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

        <cc1:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server"

                                  TargetControlID="TextBox1"    //必须、使用自动完成功能的TextBox控件Id

                                  ServicePath="AutoComplete.asmx"    //必须、要调用的web服务

                                  ServiceMethod="getUserList"    //必须、要调用的web服务中的方法

                                  CompletionSetCount="6"    //返回的数据行

                                  MinimumPrefixLength="0"    //输入多少个字符就开始调用web服务

                                  CompletionInterval="1000"    //每隔多长时间调用一次web服务,单位为毫秒

                                  CompletionListCssClass="autocomplete_completionListElement"    //下拉框样式

                                  CompletionListItemCssClass="autocomplete_listItem"    //下拉框元素样式

                                  CompletionListHighlightedItemCssClass="autocomplete_highlightedListItem"    //鼠标所在下拉框元素样式

                                 >

        </cc1:AutoCompleteExtender>

4.       编写web服务

<%@ WebService Language="C#" Class="AjaxToolkit.AutoComplete" %>

using System;

using System.Collections;

using System.Linq;

using System.Web;

using System.Web.Services;

using System.Web.Services.Protocols;

using System.Xml.Linq;

 

namespace AjaxToolkit

{

    /// <summary>

    ///AutoComplete 的摘要说明

    /// </summary>

    [WebService(Namespace = "http://tempuri.org/")]

    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

    //若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。

    [System.Web.Script.Services.ScriptService]

    public class AutoComplete : System.Web.Services.WebService

    {

        public AutoComplete()

        {

            //如果使用设计的组件,请取消注释以下行

            //InitializeComponent();

        }

 

        [WebMethod]

        public string[] getUserList(string prefixText, int count) //注意此处的参数名和类型必须原封不动否则无法响应

        {

            count = 100;

            string[] strs = new string[count];

            for (int i = 0; i < count; i++)

            {

                strs[i] = prefixText + "_" + i.ToString();

            }

           

            return strs;

        }

    }

}

5.       css样式:

.autocomplete_completionListElement

 {

    margin : 0px!important;

    background-color : inherit;

    color : windowtext;

    border : buttonshadow;

    border-width : 1px;

    border-style : solid;

    cursor : 'default';

    overflow : auto;

    height :auto;

    max-height:200px;

    text-align : left;

    list-style-type : none;

}

  

.autocomplete_listItem

{

    border-style : solid;

    border :#EAEFF9;

    border-width : 1px;

    background-color : window;

    color : windowtext;

}

 

.autocomplete_highlightedListItem

{

    background-color: #ffff99;

    color: black;

    padding: 1px;

}

6.       截图如下

这篇关于十、AutoComplete——自动完成的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/621672

相关文章

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

基于Redis自动过期的流处理暂停机制

《基于Redis自动过期的流处理暂停机制》基于Redis自动过期的流处理暂停机制是一种高效、可靠且易于实现的解决方案,防止延时过大的数据影响实时处理自动恢复处理,以避免积压的数据影响实时性,下面就来详... 目录核心思路代码实现1. 初始化Redis连接和键前缀2. 接收数据时检查暂停状态3. 检测到延时过

SpringBoot实现RSA+AES自动接口解密的实战指南

《SpringBoot实现RSA+AES自动接口解密的实战指南》在当今数据泄露频发的网络环境中,接口安全已成为开发者不可忽视的核心议题,RSA+AES混合加密方案因其安全性高、性能优越而被广泛采用,本... 目录一、项目依赖与环境准备1.1 Maven依赖配置1.2 密钥生成与配置二、加密工具类实现2.1

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

SQL Server跟踪自动统计信息更新实战指南

《SQLServer跟踪自动统计信息更新实战指南》本文详解SQLServer自动统计信息更新的跟踪方法,推荐使用扩展事件实时捕获更新操作及详细信息,同时结合系统视图快速检查统计信息状态,重点强调修... 目录SQL Server 如何跟踪自动统计信息更新:深入解析与实战指南 核心跟踪方法1️⃣ 利用系统目录

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、

MyBatis-Plus 自动赋值实体字段最佳实践指南

《MyBatis-Plus自动赋值实体字段最佳实践指南》MyBatis-Plus通过@TableField注解与填充策略,实现时间戳、用户信息、逻辑删除等字段的自动填充,减少手动赋值,提升开发效率与... 目录1. MyBATis-Plus 自动赋值概述1.1 适用场景1.2 自动填充的原理1.3 填充策略

SpringBoot+Docker+Graylog 如何让错误自动报警

《SpringBoot+Docker+Graylog如何让错误自动报警》SpringBoot默认使用SLF4J与Logback,支持多日志级别和配置方式,可输出到控制台、文件及远程服务器,集成ELK... 目录01 Spring Boot 默认日志框架解析02 Spring Boot 日志级别详解03 Sp

浏览器插件cursor实现自动注册、续杯的详细过程

《浏览器插件cursor实现自动注册、续杯的详细过程》Cursor简易注册助手脚本通过自动化邮箱填写和验证码获取流程,大大简化了Cursor的注册过程,它不仅提高了注册效率,还通过友好的用户界面和详细... 目录前言功能概述使用方法安装脚本使用流程邮箱输入页面验证码页面实战演示技术实现核心功能实现1. 随机

Navicat数据表的数据添加,删除及使用sql完成数据的添加过程

《Navicat数据表的数据添加,删除及使用sql完成数据的添加过程》:本文主要介绍Navicat数据表的数据添加,删除及使用sql完成数据的添加过程,具有很好的参考价值,希望对大家有所帮助,如有... 目录Navicat数据表数据添加,删除及使用sql完成数据添加选中操作的表则出现如下界面,查看左下角从左