我正在使用.ajax呼叫进行键盘填充自动填充搜索。当我输入3个以上的字符时,它将开始发送呼叫。我想在没有更多结果时停止更多的Ajax调用,因此用户每次写一个字符时都可以继续填充输入而无需新的调用。有人可以帮忙吗?$(document).ready(function () { $("#search-name").keyup(function () { var input = $("#search-name").val(); if (input.length > 3) { $.ajax({ type: "POST", url: "inc/autofill_name.php", data: 'keyword=' + $(this).val(), beforeSend: function () { $("#search-name").css("background", "#FFF"); }, success: function (data) { $("#suggesstion-box").show(); $("#suggesstion-box").html(data); $("#search-name").css("background", "#FFF"); } }); } });});function selectName(val) { $("#search-name").val(val); $("#suggesstion-box").hide();}PHP代码已添加:if(!empty($_POST['keyword'])) { $keyword = $_POST["keyword"]; $query ='SELECT * FROM users WHERE name like ' . quote_smart($keyword,1). ' GROUP BY name ORDER BY name LIMIT 30'; $results = mysqli_query($mysqli, $query); if(!empty($results)) { echo '<ul id="user-list">'; foreach($results as $user) { $username = htmlspecialchars(''.$user["name"].'', ENT_QUOTES); echo '<li onClick="selectName(\''.$username.'\')">'.$user['name'].'</li>'; } echo '</ul>'; } }
添加回答
举报
0/150
提交
取消