⊗jsPrStAuc 11 of 62 menu

Pelengkapan Automatik dalam JavaScript

Sekarang kita akan melaksanakan pelengkapan automatik. Istilah ini merujuk kepada petunjuk terjuntai apabila teks dimasukkan ke dalam input. Mari kita lihat contohnya. Di bawah ini saya telah membuat satu input, di mana anda boleh memasukkan nama negara. Pada masa yang sama, jika beberapa huruf dimasukkan, senarai negara yang bermula dengan rentetan yang dimasukkan akan muncul di bawah input.

Jika mahu, anda boleh, tanpa perlu memasukkan keseluruhan nama negara, klik dengan tetikus pada mana-mana negara dan ia akan muncul dalam input. Secara umumnya, untuk inilah pelengkapan automatik diperlukan. Dalam contoh, untuk kesederhanaan, saya hanya meletakkan tiga negara: Belarus, Belgium dan Bulgaria. Masukkan ke dalam input di bawah pertama aksara 'B' (Bahasa Inggeris), kemudian 'e' dan lihat apa yang akan berlaku:

Perbincangan

Mari kita bincangkan cara menyelesaikan masalah. Perlu membuat array dengan nama negara. Saya mempunyai array seperti ini:

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

Apabila teks dimasukkan ke dalam input, bagi setiap aksara yang dimasukkan, array negara perlu disemak dan negara yang bermula dengan rentetan yang dimasukkan perlu diperoleh. Ini mudah dilakukan dengan kaedah filter dan startsWith.

Dengan filter, anda boleh mendapatkan array negara yang bermula dengan rentetan yang dimasukkan. Kemudian array ini perlu dilalui dengan gelung dan senarai ul diisi dengan elemen li negara. Dan ini perlu dilakukan bagi setiap aksara yang dimasukkan, dengan terlebih dahulu membuang elemen li yang dicipta sebelum ini daripada senarai ul.

Untuk kemudahan anda, saya sediakan susun atur siap:

<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; }

Salin kod HTML dan CSS yang diberikan kepada anda. Laksanakan pelengkapan automatik mengikut algoritma yang diterangkan.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak