


So implementieren Sie die Fuzzy-Abfragefunktion im Dropdown-Feld in Angular
In diesem Artikel wird hauptsächlich die Implementierung der Dropdown-Box-Fuzzy-Abfragefunktion vorgestellt, die AngularJS-Ereignisantwort und Zeichenfolgenabfrage sowie andere verwandte Betriebsfähigkeiten umfasst. Freunde in Not können sich darauf beziehen
Das Beispiel dieses Artikels Beschreibt die Implementierung des Dropdown-Felds in der Angular Fuzzy-Abfragefunktion. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
Ich habe vor zwei Tagen AngularJS studiert und muss sagen, dass die MVC-Idee von AngularJS immer noch sehr mächtig ist. Es ist immer noch sehr vorteilhaft für Projekte, die sich auf die Datenverarbeitung konzentrieren.
Ich habe eine Demo eines Such-Dropdown-Felds geschrieben, in das ich alle Kommentare geschrieben habe, damit es nicht mehr so wortreich wird.
1. Gewöhnliche Art der Implementierung
<!DOCTYPE html> <html> <head lang="zh_CN"> <meta charset="utf-8"> <title>www.jb51.net Angular模糊匹配</title> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js" type="text/javascript"></script> <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" rel="stylesheet"> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script> </head> <body > <p ng-app="myApp" ng-controller="myCtrl"> <input type = 'test' ng-change="changeKeyValue(searchField)" ng-model="searchField" style = 'display:block;width:200px' ng-click = 'hidden=!hidden' value="{{searchField}}"/></input> <p ng-hide="hidden"> <select style = 'width:200px' ng-change="change(x)" ng-model="x" multiple> <option ng-repeat="data in datas" >{{data}}</option> </select> </p> </p> <p> <p><h1>angular输入选择框</h1></p> <p><h2>逻辑实现步骤</h2></p> <p>1文本框做输入,并监控器change事件,在change事件中获取输入值,获取的输入值与选择框中的各个下拉项进行比较</p> <p>2如果包含则只显示包含的部分,不包含则显示全部</p> <p> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.datas = ["key4","xyz","key3","xxxx","key2","value2","key1","value1"]; //下拉框选项 $scope.tempdatas = $scope.datas; //下拉框选项副本 $scope.hidden=true;//选择框是否隐藏 $scope.searchField='';//文本框数据 //将下拉选的数据值赋值给文本框 $scope.change=function(x){ $scope.searchField=x; $scope.hidden=true; } //获取的数据值与下拉选逐个比较,如果包含则放在临时变量副本,并用临时变量副本替换下拉选原先的数值,如果数据为空或找不到,就用初始下拉选项副本替换 $scope.changeKeyValue=function(v){ var newDate=[]; //临时下拉选副本 //如果包含就添加 angular.forEach($scope.datas ,function(data,index,array){ if(data.indexOf(v)>=0){ newDate.unshift(data); } }); //用下拉选副本替换原来的数据 $scope.datas=newDate; //下拉选展示 $scope.hidden=false; //如果不包含或者输入的是空字符串则用初始变量副本做替换 if($scope.datas.length==0 || ''==v){ $scope.datas=$scope.tempdatas; } console.log($scope.datas); } }); </script> </html>
2. Befehlsweise zur Implementierung
<!DOCTYPE html> <html> <head lang="zh_CN"> <meta charset="utf-8"> <title>www.jb51.net Angular模糊匹配</title> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js" type="text/javascript"></script> <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" rel="stylesheet"> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script> </head> <body > <p ng-app="myApp" ng-controller="myCtrl"> <p> <select-search datas="datas"></select-search> </p> </p> <p> <p><h1>angular输入选择框 自定义指令方式</h1></p> <p><h2>逻辑实现步骤</h2></p> <p>1文本框做输入,并监控器change事件,在change事件中获取输入值,获取的输入值与选择框中的各个下拉项进行比较</p> <p>2如果包含则只显示包含的部分,不包含则显示全部</p> <p> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.datas = ["key4","xyz","key3","xxxx","key2","value2","key1","value1"]; //下拉框选项 }); app.directive('selectSearch', function($compile) { return { restrict: 'AE', //attribute or element scope: { datas: '=', //bindAttr: '=' }, template: '<input type = "test" ng-change="changeKeyValue(searchField)" ng-model="searchField" style = "display:block;width:200px" '+ 'ng-click = "hidden=!hidden" value="{{searchField}}"/></input>'+ '<p ng-hide="hidden">'+ ' <select style = "width:200px" ng-change="change(x)" ng-model="x" multiple>'+ ' <option ng-repeat="data in datas" >{{data}}</option>'+ ' </select>'+ '</p>', // replace: true, link: function($scope, elem, attr, ctrl) { $scope.tempdatas = $scope.datas; //下拉框选项副本 $scope.hidden=true;//选择框是否隐藏 $scope.searchField='';//文本框数据 //将下拉选的数据值赋值给文本框 $scope.change=function(x){ $scope.searchField=x; $scope.hidden=true; } //获取的数据值与下拉选逐个比较,如果包含则放在临时变量副本,并用临时变量副本替换下拉选原先的数值,如果数据为空或找不到,就用初始下拉选项副本替换 $scope.changeKeyValue=function(v){ var newDate=[]; //临时下拉选副本 //如果包含就添加 angular.forEach($scope.datas ,function(data,index,array){ if(data.indexOf(v)>=0){ newDate.unshift(data); } }); //用下拉选副本替换原来的数据 $scope.datas=newDate; //下拉选展示 $scope.hidden=false; //如果不包含或者输入的是空字符串则用初始变量副本做替换 if($scope.datas.length==0 || ''==v){ $scope.datas=$scope.tempdatas; } console.log($scope.datas); } } }; }); </script> </html>
Der endgültige Effekt ist wie folgt:
Beachten Sie, dass das Mehrfachattribut hier auf das Select-Tag festgelegt ist, sodass das Eingabe-Tag auf der Seite überschreiben kann das Select-Tag
Wenn Sie das Multiple-Attribut nicht benötigen, müssen Sie p verwenden, um den Select-Tag-Effekt selbst zu simulieren
Das Obige ist, was ich für alle zusammengestellt habe in Zukunft für alle hilfreich sein.
Verwandte Artikel:
So implementieren Sie den auf die Maus reagierenden Taobao-Animationseffekt in jQuery
in JavaScriptDas obige ist der detaillierte Inhalt vonSo implementieren Sie die Fuzzy-Abfragefunktion im Dropdown-Feld in Angular. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Dieser Artikel setzt das Erlernen von Angular fort, führt Sie zum Verständnis der Metadaten und Dekoratoren in Angular und erläutert kurz deren Verwendung. Ich hoffe, dass er für alle hilfreich ist!

Angular.js ist eine frei zugängliche JavaScript-Plattform zum Erstellen dynamischer Anwendungen. Es ermöglicht Ihnen, verschiedene Aspekte Ihrer Anwendung schnell und klar auszudrücken, indem Sie die Syntax von HTML als Vorlagensprache erweitern. Angular.js bietet eine Reihe von Tools, die Sie beim Schreiben, Aktualisieren und Testen Ihres Codes unterstützen. Darüber hinaus bietet es viele Funktionen wie Routing und Formularverwaltung. In dieser Anleitung wird erläutert, wie Angular auf Ubuntu24 installiert wird. Zuerst müssen Sie Node.js installieren. Node.js ist eine JavaScript-Ausführungsumgebung, die auf der ChromeV8-Engine basiert und es Ihnen ermöglicht, JavaScript-Code auf der Serverseite auszuführen. In Ub sein

Dieser Artikel vermittelt Ihnen ein detailliertes Verständnis des Angular-Statusmanagers NgRx und stellt Ihnen die Verwendung von NgRx vor. Ich hoffe, er wird Ihnen hilfreich sein!

Wie verwende ich den Monaco-Editor in Angular? Der folgende Artikel dokumentiert die Verwendung des Monaco-Editors in Angular, der kürzlich in einem Unternehmen verwendet wurde. Ich hoffe, dass er für alle hilfreich sein wird!

Kennen Sie Angular Universal? Es kann dazu beitragen, dass die Website eine bessere SEO-Unterstützung bietet!

In diesem Artikel erfahren Sie, wie Sie mit Angular in Kombination mit ng-zorro schnell ein Backend-System entwickeln. Ich hoffe, dass er für alle hilfreich ist.

Mit der rasanten Entwicklung des Internets wird auch die Front-End-Entwicklungstechnologie ständig verbessert und iteriert. PHP und Angular sind zwei Technologien, die in der Frontend-Entwicklung weit verbreitet sind. PHP ist eine serverseitige Skriptsprache, die Aufgaben wie die Verarbeitung von Formularen, die Generierung dynamischer Seiten und die Verwaltung von Zugriffsberechtigungen übernehmen kann. Angular ist ein JavaScript-Framework, mit dem Single-Page-Anwendungen entwickelt und komponentenbasierte Webanwendungen erstellt werden können. In diesem Artikel erfahren Sie, wie Sie PHP und Angular für die Frontend-Entwicklung verwenden und wie Sie diese kombinieren

Dieser Artikel führt Sie durch die unabhängigen Komponenten in Angular, wie Sie eine unabhängige Komponente in Angular erstellen und wie Sie vorhandene Module in die unabhängige Komponente importieren. Ich hoffe, er wird Ihnen hilfreich sein!
