AJAX 实时搜索学习笔记

什么是 AJAX

AJAX(Asynchronous JavaScript and XML)是一种创建快速动态网页的技术,它在不重新加载整个页面的情况下,实现了对部分页面的更新。通过 AJAX 技术,可以实现异步通信,从而大幅度提高页面响应速度和用户体验。

AJAX 实时搜索实例

下面是一个简单的 AJAX 实时搜索实例,它使用了 jQuery 和 PHP。

HTML 代码

htmlCopy Code
<!DOCTYPE html> <html> <head> <title>AJAX 实时搜索</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <script src="js/search.js"></script> </head> <body> <h1>AJAX 实时搜索</h1> <input type="text" id="keywords" placeholder="请输入关键词"> <ul id="result"></ul> </body> </html>

jQuery 代码

javascriptCopy Code
$(function(){ $('#keywords').keyup(function(){ var keywords = $(this).val(); $.ajax({ url: 'search.php', type: 'post', dataType: 'json', data: {'keywords': keywords}, success: function(data){ var html = ''; if(data.length > 0){ for(var i=0; i<data.length; i++){ html += '<li>'+data[i]+'</li>'; } }else{ html += '<li>没有找到相关结果</li>'; } $('#result').html(html); } }); }); });

PHP 代码

phpCopy Code
<?php $keywords = $_POST['keywords']; $data = array(); if($keywords){ $conn = mysqli_connect('localhost', 'root', 'password', 'test'); mysqli_query($conn, "set names 'utf8'"); $sql = "select * from `books` where `name` like '%".$keywords."%'"; $result = mysqli_query($conn, $sql); while($row = mysqli_fetch_assoc($result)){ $data[] = $row['name']; } mysqli_close($conn); } echo json_encode($data); ?>

备注

以上实例仅供参考,具体实现方式和效果因环境和需求而异。建议在实际开发过程中,结合自身业务进行调整和优化。