Я пытаюсь получить некоторые результаты с помощью сценария поиска в реальном времени, и выбранный вариант остается на входе, где я напечатал запрос, до сих пор у меня есть это, и я получаю список, когда я печатаю, но я ' Я пробовал разные конфигурации и до сих пор не заставил его работать. Вот что у меня есть:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Prueba de asincronía</title>
<script>
function showResult(Option) {
if (Option.length==0) {
document.getElementById("livesearch").innerHTML="";
document.getElementById("livesearch").style.border="0px";
return;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (this.readyState==4 && this.status==200) {
document.getElementById("livesearch").innerHTML=this.responseText;
document.getElementById("livesearch").style.border="1px solid #A5ACB2";
}
}
xmlhttp.open("GET","estados.php?busca_edo="+Option,true);
xmlhttp.send();
}
</script>
</head>
<body>
<form>
<input type="text" size="30" onkeyup="showResult(this.value)" value="">
<div id="livesearch"></div>
</form>
</body>
</html>
И запрос mysqli выглядит так:
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
include("db_connetion.php");
$states_search = $_GET['busca_edo'];
$q4=mysqli_query($cnx,"SELECT * FROM estados WHERE estado LIKE '%$states_search%' ORDER BY estado ASC");
if(mysqli_num_rows($q4) >= 1){
while($rows=mysqli_fetch_assoc($q4)){
?>
<option value="<?= $rows['id'] ?>"><?= $rows['estado'] ?></option>
<?php
}
}else{
echo '<option value="">No hay resultados</option>';
}
?>
Может кто-нибудь указать мне правильное направление и, пожалуйста, не JQuery?
Спасибо вам всем.