我想在我的用户名数据库中进行搜索,但它不识别按键功能。另外,我想在第一次加载时阻止search.php(不能使用isset,因为没有按钮)这是我的 index.php
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<head>
<title></title>
<?php include 'search.php'; ?>
<script>
$(document).ready(function() {
$("#textbox1").keypress(function() {
$.ajax({
type: "GET",
url: "search.php",
success: function(data) {
$("#main").html(data);
}
});
});
});
</script>
<form method="POST">
enter keyword to search<br>
<input type="text" name="textbox1" id="textbox1">
<br><br>
<div id="main"></div>
</form>
</head>
<body>
这是我的 search.php 。 connection.php 正常工作。所以我不是在这里粘贴它
<?php
include 'connection.php';
$search_value = $_POST['textbox1'];
$query = "SELECT username FROM users WHERE username LIKE '" . $search_value . "%'";
$conn_status = mysqli_query($conn, $query);
while($row = $conn_status->fetch_assoc())
{
echo $row['username'] . '<br>';
}
?>
答案 0 :(得分:2)
您应该将字段值作为ajax请求中的数据发送到PHP页面,如:
$.ajax({
type: "GET",
url: "search.php",
data: {textbox1: $(this).val()},
success: function (data) {
$("#main").html(data);
}
});
注意:我建议在这种情况下使用input
事件,因为它在跟踪用户输入时效率更高:
$("#textbox1").on('input', function(){
//Your logic here
});
答案 1 :(得分:0)
这个片段是一个有修改的片段,因为你有错误的HTML以及忘记将数据发送到服务器。
.gs