⊗jsPrStAuc 11 of 62 menu

Outomatiese Voltooiing in JavaScript

Nou sal ons outomatiese voltooiing implementeer. Hierdie term verwys na 'n uitklapwyser wanneer teks in 'n invoerveld getik word. Kom ons kyk na 'n voorbeeld. Hieronder het ek 'n invoerveld gemaak waarin jy die naam van 'n land kan tik. As jy 'n paar letters intik, sal 'n lys van lande wat met die ingetikte string begin, onder die invoerveld verskyn.

As jy wil, kan jy, om nie die hele landnaam te hoef in te tik nie, met die muis op enige land klik en dit sal in die invoerveld verskyn. Dit is, in die algemeen, waarvoor outomatiese voltooiing nodig is. In die voorbeeld het ek vir eenvoud slegs drie lande gemaak: Belarus, Belgium en Bulgaria. Tik in die onderstaande invoerveld eers die simbool 'B' (Engels), en dan 'e' en kyk wat gebeur:

Bespreking

Kom ons bespreek hoe om die probleem op te los. Ons moet 'n skikking met landname maak. Myne is soos volg:

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

Wanneer teks in die invoerveld getik word, moet ons met die invoer van elke simbool die skikking met lande deurloop en die lande kry wat met die ingetikte string begin. Dit is gerieflik om te doen met die metodes filter en startsWith.

Met filter kan ons 'n skikking lande kry wat met die ingetikte string begin. Dan moet ons hierdie skikking met 'n lus deurloop en die lys ul met lyste items vul. En dit moet gedoen word met elke simboolinvoer, voorafgaande verwydering van die voorheen geskepte lyste items uit die ul.

Vir jou gerief gee ek die 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 die gegewe HTML- en CSS-kodes vir jouself. Implementeer outomatiese voltooiing volgens die beskryfde algoritme.

Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp