所以我有了所有这些运行良好的代码。但当我开始在搜索字段中键入时,它只显示表记录。默认情况下,我希望打开页面时所有记录都可见。我知道这与keyup函数有关,但在我在搜索字段中键入任何内容之前,有没有一种方法可以默认显示所有记录?
AJAX实时搜索/输入代码
<input type="text" id="search">
<div class="table-container" id="output"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#search").keyup(function(){
$.ajax({
type:'POST',
url:'search.php',
data:{
name:$("#search").val(),
},
success:function(data){
$("#output").html(data);
}
});
});
});
</script>
PHP代码
$select = "SELECT * FROM info WHERE name LIKE '%".$_POST['name']."%'";
$result = mysqli_query($conn, $select);
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
echo "
//table code.. ";
}
我希望它能像过滤搜索一样工作。
只需编写另一个ajax
$('#search').on('click',function(){
$.ajax({
type:'GET',
url:'searchAll.php',
success:function(data){
$("#output").html(data);
}
});
});
然后在searchAll.php文件中编写查询php代码。
注意:使用准备好的语句或PDO来防止SQL注入