⊗jsPrStAuc 11 of 62 menu

Autocompletion in JavaScript

Nu gaan we autocompletion implementeren. Deze term verwijst naar een dropdown-hint bij het invoeren van tekst in een invoerveld. Laten we kijken naar een voorbeeld. Hieronder heb ik een invoerveld gemaakt waarin je de naam van een land kunt invoeren. Als je enkele letters invoert, verschijnt er onder het invoerveld een lijst met landen die beginnen met de ingevoerde tekst.

Optioneel kun je, om de landnaam niet helemaal te hoeven intoetsen, met de muis op een land klikken en het verschijnt in het invoerveld. Dit is, in het algemeen, waar autocompletion voor dient. In het voorbeeld heb ik voor de eenvoud slechts drie landen gemaakt: Belarus, Belgium en Bulgaria. Voer in het onderstaande invoerveld eerst het Engelse teken 'B' in, en daarna 'e' en kijk wat er gebeurt:

Discussie

Laten we bespreken hoe we het probleem moeten aanpakken. We moeten een array maken met namen van landen. De mijne is als volgt:

let arr = ['Belarus', 'Belgium', 'Bulgaria'];

Bij het invoeren van tekst in het invoerveld moet bij elke ingevoerde teken de array met landen worden doorlopen en moeten de landen worden verkregen die beginnen met de ingevoerde tekst. Dit kan handig worden gedaan met de methoden filter en startsWith.

Met filter kun je een array krijgen van landen die beginnen met de ingevoerde tekst. Vervolgens moet deze array worden doorlopen met een lus en de lijst ul worden gevuld met list items (li's) van de landen. En dit moet worden gedaan bij elke ingevoerde teken, waarbij eerst de eerder gemaakte list items uit de ul worden verwijderd.

Voor uw gemak geef ik hier de voltooide opmaak:

<div id="parent"> <input id="elem"> <ul id="list"></ul> </div> text text text text text #parent { position: relative; } #elem { padding: 5px; font-size: 18px; } #parent ul { position: absolute; margin: 0; padding: 0; list-style-type: none; background-color: white; } #parent li { border: 1px solid gray; font-size: 18px; padding: 5px; } #parent li:hover { border: 1px solid black; cursor: pointer; }

Kopieer de gegeven HTML- en CSS-codes. Implementeer autocompletion volgens het beschreven algoritme.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren