Rumah > Artikel > hujung hadapan web > Cara membuat kotak carian dengan kesan dinamik menggunakan HTML, CSS dan jQuery
Cara menggunakan HTML, CSS dan jQuery untuk mencipta kotak carian dengan kesan dinamik
Dalam pembangunan web moden, keperluan biasa Adalah untuk buat kotak carian dengan kesan dinamik. Kotak carian ini boleh memaparkan cadangan carian dalam masa nyata dan melengkapkan kata kunci secara automatik semasa pengguna menaip. Artikel ini akan memperkenalkan secara terperinci cara menggunakan HTML, CSS dan jQuery untuk melaksanakan kotak carian sedemikian.
Pertama, kita perlu mencipta struktur HTML asas. Kodnya adalah seperti berikut:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>动态搜索框</title> <link rel="stylesheet" href="styles.css"> </head> <body> <div class="container"> <h1>动态搜索框</h1> <input type="text" id="search-input" placeholder="请输入关键词"> <ul id="suggestion-list"></ul> </div> <script src="jquery.min.js"></script> <script src="script.js"></script> </body> </html>
Struktur HTML ini mengandungi div bekas, yang termasuk tajuk dan kotak input untuk carian. Kami juga mencipta elemen ul untuk memaparkan cadangan carian.
Seterusnya, kita perlu menulis gaya CSS untuk menambah beberapa gaya asas pada kotak carian untuk menjadikannya kelihatan seperti Lagi cantik. Kodnya adalah seperti berikut:
.container { max-width: 500px; margin: 0 auto; padding: 20px; text-align: center; } h1 { font-size: 24px; } input[type="text"] { width: 100%; padding: 10px; border: 1px solid #ccc; border-radius: 5px; margin-bottom: 10px; } #suggestion-list { text-align: left; list-style-type: none; padding: 0; display: none; } #suggestion-list li { padding: 10px; background-color: #f2f2f2; cursor: pointer; } #suggestion-list li:hover { background-color: #e3e3e3; }
Gaya CSS ini menambah gaya yang sesuai pada bekas, tajuk, kotak input dan senarai cadangan carian untuk menjadikannya kelihatan lebih profesional.
Kini kita perlu menggunakan jQuery untuk melaksanakan fungsi cadangan carian. Kodnya adalah seperti berikut:
$(document).ready(function() { $('#search-input').keyup(function() { var keyword = $(this).val(); if (keyword !== '') { $.ajax({ url: 'suggestion.php', type: 'POST', data: { keyword: keyword }, success: function(data) { if (data.trim() !== '') { $('#suggestion-list').html(data).show(); } else { $('#suggestion-list').html('').hide(); } } }); } else { $('#suggestion-list').html('').hide(); } }); $(document).on('click', '#suggestion-list li', function() { var suggestion = $(this).text(); $('#search-input').val(suggestion); $('#suggestion-list').html('').hide(); }); });
Kod ini mula-mula mendengar acara papan kekunci kotak input Apabila pengguna memasukkan, ia menggunakan AJAX untuk menghantar permintaan ke fail belakang yang bernama suggestion.php dan menambah kunci yang dimasukkan oleh pengguna. Perkataan dihantar ke bahagian belakang. Bahagian belakang akan mengembalikan cadangan carian yang sepadan, dan kemudian bahagian hadapan akan mengemas kini senarai cadangan carian secara dinamik berdasarkan data yang dikembalikan.
Apabila pengguna mengklik pada item dalam senarai cadangan carian, kandungan item tersebut akan diisi dalam kotak input dan senarai cadangan carian akan disembunyikan.
Untuk kod hujung belakang, kita boleh menggunakan PHP atau bahasa sebelah pelayan yang lain untuk melaksanakannya. Di sini kami mengambil PHP sebagai contoh untuk menunjukkan kod sampel mudah:
<?php $keyword = $_POST['keyword']; // 从数据库或其他数据源获取搜索建议 $suggestions = array( '苹果', '香蕉', '橙子', '草莓', '葡萄', '西瓜', '梨', '柚子' ); $output = ''; foreach ($suggestions as $s) { if (strpos($s, $keyword) !== false) { $output .= '<li>' . $s . '</li>'; } } echo $output; ?>
Kod ini menerima kata kunci yang diluluskan oleh bahagian hadapan dan mendapatkan cadangan carian yang sepadan daripada pangkalan data atau sumber data lain berdasarkan kata kunci. Kemudian cadangan disambungkan ke dalam item senarai HTML dalam format yang diperlukan dan dikembalikan ke bahagian hadapan.
Selepas menyimpan kod di atas sebagai fail yang sepadan dan mengimport pustaka CSS dan JavaScript yang sepadan, buka penyemak imbas untuk menjalankan HTML fail, Anda akan melihat kotak carian dengan kesan dinamik.
Ringkasan
Dengan menggunakan HTML, CSS dan jQuery, kami boleh mencipta kotak carian dengan kesan dinamik dengan mudah. Dengan memantau input pengguna, menghantar permintaan AJAX ke bahagian belakang untuk mendapatkan cadangan carian, dan mengemas kini senarai cadangan carian secara dinamik, pengguna boleh memilih cadangan carian dengan mudah atau terus memasukkan kata kunci untuk dicari. Kotak carian ini boleh digunakan dalam fungsi carian pelbagai laman web untuk memberikan pengguna pengalaman yang lebih baik.
Atas ialah kandungan terperinci Cara membuat kotak carian dengan kesan dinamik menggunakan HTML, CSS dan jQuery. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!