文本框文本自动补全效果示例分享_jquery
/*文本自动补全 zhouxiang*/
(function ($) {
$.Completion = function (setting) {
var opts = $.extend({}, $.Completion.DefaultSetting, setting);
//宽度
var Completion_Width = null;
//高度
var Completion_Height = null;
//数据源(ashx)访问路径
var Completion_Data_Url = null;
//对象
var Completion_Obj = null;
var Completion_Obj_Show = null;
//对象距离左边距
var Completion_Obj_MarginLeft = null;
//对象距离上边距
var Completion_Obj_MarginTop = null;
//对象高度
var Completion_Obj_Height = null;
//分类
var Completion_Count = null;
//
var Completion_Type_obj = null;
//内容
var Completion_Value = null;
//类型
var Completion_Type = null;
//是否传入类型
var Completion_Bool = false;
//计数
var Completion_N = 0;
//回车回调
var Completion_ClickCall = null;
//加载
function Completion_Loading() {
//初始化
Init();
//绑定事件
Completion_Obj_AddEvent();
}
//初始化
function Init() {
Completion_Obj_Show = opts.Completion_Obj_Show;
//获取对象
Completion_Obj = opts.Completion_Obj;
//获取对象宽度
Completion_Width = Completion_Obj.width();
//获取层显示高度
Completion_Height = opts.Completion_Height;
//获取访问数据库URL
Completion_Data_Url = opts.Completion_Data_Url;
//每次查询多少条记录
Completion_Count = opts.Completion_Count;
//获取对象高度
Completion_Obj_Height = Completion_Obj.height();
//获取左边距
Completion_Obj_MarginLeft = Completion_Obj.offset().left;
//获取上边距
Completion_Obj_MarginTop = parseInt(Completion_Obj.offset().top) + parseInt(Completion_Obj_Height);
Completion_Type_obj = opts.Completion_Type_obj;
Completion_Bool = opts.Completion_Bool;
Completion_ClickCall = opts.Completion_ClickCall;
}
//给对象添加事件
function Completion_Obj_AddEvent() {
Completion_Obj.keyup(function (event) {
switch (event.keyCode) {
case 38:
break;
case 40:
break;
case 13:
Completion_ClickCall();
break;
default:
//按键事件 延迟操作
Cimpletion_Bind();
break;
}
});
Completion_Obj.keydown(function (event) {
switch (event.keyCode) {
case 13:
break;
case 38:
if (Completion_N == 0) {
Completion_N = (Completion_Obj_Show.find("li").length - 1);
} else if (Completion_N != 0) {
Completion_N = Completion_N - 1;
}
//alert(Completion_N);
Completion_Obj_Show.find("li").find("a").removeClass("Completion-guess-list-hover");
Completion_Obj_Show.find("li").eq(Completion_N).find("a").addClass("Completion-guess-list-hover");
Completion_Obj.val(Completion_Obj_Show.find("li").eq(Completion_N).find("ul").text());
break;
case 40:
if (Completion_N + 1 Completion_N = Completion_N + 1;
} else if (Completion_N + 1 == Completion_Obj_Show.find("li").length) {
Completion_N = 0;
}
Completion_Obj_Show.find("li").find("a").removeClass("Completion-guess-list-hover");
Completion_Obj.val(Completion_Obj_Show.find("li").eq(Completion_N).find("ul").text());
Completion_Obj_Show.find("li").eq(Completion_N).find("a").addClass("Completion-guess-list-hover");
break;
default:
break;
}
});
}
//绑定方法
function Cimpletion_Bind() {
//是否开启类型判断
if (Completion_Bool) {
Completion_Type = Completion_Type_obj.val();
}
Completion_Value = Completion_Obj.val();
Completion_Value = Completion_Value.replace(" ", "");
//执行验证
Completion_Verification(Completion_Value);
if (Completion_Value.length > 1) {
//得到数据 构造HTML
Completion_Data_Bind();
} else {
Completion_Obj_Show.hide();
}
}
//验证
function Completion_Verification(obj) {
if (obj == "" || obj == null || obj == undefined) {
return false;
}
}
//执行AJAX请求 得到数据
function Completion_Data_Bind() {
$.ajax({
url: Completion_Data_Url,
data: { CompletionValue: Completion_Value, CompletionCount: Completion_Count, CompletionType: Completion_Type },
type: "post",
dataType: "json",
success: function (obj) {
//构造HTML
Completion_Add_Html(obj);
}
});
}
//选中
function Completion_Selected(obj) {
Completion_Obj.val(obj.find("ul").text());
Completion_Obj_Show.hide();
}
//构造内容
function Completion_Add_Html(obj) {
var data = obj.Completion_Data;
//执行验证
Completion_Verification(data);
var ComPletion_Li = "";
if (data != null && data != undefined) {
for (var i = 0; i //执行验证是否为空
var dr = data[i];
Completion_Verification(dr);
var ComPletionName = dr.ComPletion_Name;
ComPletionName = ComPletionName.replace(Completion_Value.toUpperCase(), "" + Completion_Value.toUpperCase() + "");
ComPletion_Li += "
- " + ComPletionName + "
}
if (ComPletion_Li != "") {
var Completion_Html = "
- " + ComPletion_Li + "
Completion_Obj_Html(Completion_Html);
} else {
Completion_Obj_Show.hide();
}
}
}
//mouse
function MouseHover(obj) {
Completion_Obj_Show.find("li").mouseover(function () {
Completion_Obj_Show.find("li").find("a").removeClass("Completion-guess-list-hover");
Completion_Obj.val($(this).find("ul").text());
Completion_N = Completion_Obj_Show.find("li").index(this);
});
}
//绑定到控件
function Completion_Obj_Html(html) {
Completion_Obj_Show.show();
Completion_Obj_Show.html("")
Completion_Obj_Show.css({ "width": Completion_Width + 6, "height": Completion_Height, "border-width": "1px", "border-color": "#CCC", "border-top-width": "0px", "border-style": "solid", "position": "relative", "z-index": "100000" });
Completion_Obj_Show.attr("class", "Completion-guess-list");
Completion_Obj_Show.html(html);
Completion_N = -1;
Completion_Obj_Show.find("li").unbind("click").click(function () {
Completion_Selected($(this));
});
MouseHover($(this));
Completion_Obj_Show.click(function (e) {
e.stopPropagation();
})
Completion_Obj.click(function (e) {
Cimpletion_Bind();
e.stopPropagation();
});
$(document).click(function () {
Completion_Obj_Show.hide();
});
}
//加载
Completion_Loading();
};
//默认配置
$.Completion.DefaultSetting = {
Completion_Height: null,
Completion_Data_Url: null,
Completion_Obj: null,
Completion_Obj_Show: null,
Completion_Bool: false,
Completion_Count: 10,
Completion_Type_obj: null,
Completion_ClickCall: null
};
})(jQuery);
body
{
margin: 0;
padding: 0;
}
.Completion-guess-list ul, li
{
margin: 0;
padding: 0;
list-style:none;
}
.Completion-guess-list
{
overflow: auto;
font-size: 12px;
line-height: 180%;
background: #fff;
}
.Completion-guess-list a
{
color: #555;
text-decoration: none;
display: block;
padding: 1px 6px;
overflow: hidden;
white-space: nowrap;
font-family:Verdana,arial;
}
.Completion-guess-list a .c-total{float:right;color:green;}
.Completion-guess-list a:hover,.Completion-guess-list a.Completion-guess-list-hover
{
background: #3399ff;
color: #fff;
}
.Completion-guess-list a:hover span.c-total,.Completion-guess-list a.Completion-guess-list-hover span.c-total{color:#fff;}
.Completion-guess-list .c-hover{font-weight:700;}
$.Completion({ Completion_Obj: $("#Input_Html"), Completion_Data_Url: "/CompletionHandler.ashx", Completion_Height: "auto", Completion_Obj_Show: $("#show"), Completion_Bool: true, Completion_Type_obj: $("#Type"), Completion_ClickCall: function () { alert(1); }, Completion_Length: 0 });

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Développement PHP : implémentation d'invites de mots clés de recherche et de fonctions de complétion automatique À l'ère d'Internet d'aujourd'hui, les moteurs de recherche sont devenus l'un des canaux importants permettant aux utilisateurs d'obtenir des informations. Dans le développement de sites Web, l’importance de la fonction de recherche va de soi. Afin d'améliorer l'expérience utilisateur et les résultats de recherche, la mise en œuvre d'invites de mots clés de recherche et de fonctions de complétion automatique est une tâche de développement très précieuse et nécessaire. Cet article présentera comment implémenter des invites de mots clés de recherche et des fonctions de complétion automatique dans le développement PHP, et fournira des exemples de code spécifiques. Les invites de recherche par mot clé font référence au

Présentation de la façon d'utiliser Vue et Element-UI pour implémenter la fonction d'auto-complétion : L'auto-complétion est une fonction très pratique qui peut fournir des options d'achèvement pertinentes basées sur la saisie de l'utilisateur et améliorer l'expérience utilisateur. Dans le framework Vue, combiné à la bibliothèque de composants Element-UI, il devient très simple d'implémenter la fonction de complétion automatique. Cet article expliquera comment utiliser Vue et Element-UI pour implémenter cette fonction et donnera des exemples de code correspondants. Étape 1 : Créez un projet Vue et introduisez la bibliothèque Element-UI.

Dans le domaine de la programmation informatique, le langage C a toujours été privilégié par les développeurs pour sa simplicité et son efficacité. Pour améliorer l’efficacité de la programmation en langage C, il est très important de choisir un bon éditeur en langage C. Cet article présentera plusieurs éditeurs puissants en langage C pour aider les développeurs à mieux programmer en langage C. VisualStudioCodeVisualStudioCode (VSCode en abrégé) est un éditeur multiplateforme gratuit, open source, développé par Microsoft. Il prend en charge plusieurs langues

Les conseils d'annotation et la saisie semi-automatique dans l'IDE Eclipse simplifient le développement Java : Astuce : passez la souris sur une annotation pour afficher son type, ses paramètres et sa documentation. Saisie semi-automatique : suggère automatiquement des correspondances lorsque vous saisissez des noms d'annotations, y compris des annotations standard et personnalisées. Des cas pratiques démontrent l'application des invites et des fonctions de saisie semi-automatique. Ces fonctionnalités améliorent l’efficacité et la qualité du codage.

MySQL et Python : Comment implémenter la fonction de requête de données Ces dernières années, la croissance rapide des données a fait de la requête et de l'analyse des données une tâche importante dans divers domaines. En tant que système de gestion de bases de données relationnelles largement utilisé, MySQL, associé à Python, un langage de programmation puissant, peut fournir des fonctions de requête de données rapides et flexibles. Cet article expliquera comment utiliser MySQL et Python pour implémenter des fonctions de requête de données et fournira des exemples de code. Tout d'abord, nous devons installer et configurer MySQL et Python

Étapes pour configurer la saisie semi-automatique d'Eclipse : 1. Activer la saisie semi-automatique ; 2. Configurer les suggestions de saisie semi-automatique ; 3. Personnaliser les suggestions de saisie semi-automatique ; 4. Configurer les touches de raccourci de saisie semi-automatique ; Sauver et fermer. Introduction détaillée : 1. Activez la saisie semi-automatique, sélectionnez Fenêtre -> Préférences dans la barre de menu Eclipse, dans la boîte de dialogue contextuelle, développez l'option Java, sélectionnez Editeur -> Content Assist, etc. dans l'onglet de droite. .

Comment utiliser JavaScript pour réaliser la fonction d'invite de complétion automatique du contenu de la zone de saisie du formulaire ? Avec le développement d'Internet, la fonction d'invite de saisie semi-automatique des zones de saisie de formulaires devient de plus en plus courante. Lorsque les utilisateurs saisissent du contenu, des options de complétion possibles seront fournies en fonction des données existantes pour permettre aux utilisateurs de sélectionner ou de saisir rapidement les informations correctes. Cet article explique comment utiliser JavaScript pour implémenter la fonction d'invite de complétion automatique du contenu de la zone de saisie du formulaire et fournit des exemples de code spécifiques. Première étape : créer la structure HTML. Tout d'abord, nous

La saisie semi-automatique du champ de recherche est une fonctionnalité Web courante qui améliore l'expérience utilisateur et simplifie le processus de recherche. La fonction d'auto-complétion du champ de recherche en PHP peut être implémentée via des requêtes asynchrones Ajax. La méthode de mise en œuvre spécifique sera présentée ci-dessous, y compris des exemples de code frontal et de code back-end. Exemple de code frontal :
