我现在已经自动完成了。如果值无效,我正在尝试添加onkeyup事件。我这里有两个剧本。我的一个脚本是使用ajax从数据库中获取值。我的另一个就是为价值创造一个变量。我需要的是将onkeyup事件连接到我的当前代码,该代码具有ondown事件的下拉列表。我如何混淆这两个代码?
任何帮助都会表示赞赏。先谢谢!
通过Ajax获取我当前的代码
$(function() {
$("#autocomplete").autocomplete('autocomplete.php?', { mustMatch: true });
});
function changeAutoComplete (val) {
$( "#autocomplete" ).autocomplete({
source: 'autocomplete.php?selected='+val
});
}
的Ajax
<?php
$mysqli = new mysqli("localhost", "root", "", "2015") or die("Database Error");
$auto = $mysqli->real_escape_string($_GET["q"]);
$selected = $mysqli->real_escape_string($_GET["selected"]);
$sql = $mysqli->query("SELECT * FROM code WHERE item LIKE '%$auto%' AND cat_code='$selected' GROUP BY id ORDER BY item" );
if($sql)
{
$str = array();
while($row=mysqli_fetch_array($sql))
{
$str[] = $row['item'];
}
echo json_encode($str);
}
?>
使用onkeyup事件自动完成
$(document).ready(function() {
var data = ["ActionScript", "AppleScript", "Asp", "BASIC", "C", "C++", "iran", "Scheme"];
$("#autocomplete").autocomplete(data, { mustMatch: true });
});
$('input#autocomplete').result(function(event, data, formatted) {
$("#result").html(!data ? "No match found!" : "Selected: " + formatted);
}).keyup(function() {
$(this).search();
$(this).css("background-color", "#D6D6FF");
});
答案 0 :(得分:0)
你应该在自动完成回调函数中执行此操作:
$( "#autocomplete" ).on("autocompleteselect", function( event, ui ) {
//bind keyup event here
});