Я застрял в этой проблеме через неделю. Здесь у меня есть выпадающий список с добавлением значения ajax в другое раскрывающееся меню, но теперь мне нужно отправить в текстовое поле функцию автозаполнения. Мне нужно подключить свой автозаполненный запрос и мой аякс, чтобы, если я выберу, например, шариковую, все шариковые порекомендуют в автозаполнении. Пожалуйста, помогите мне с этим. Мне нужно закончить его.Авто полная база по значению выпадающего списка в базе данных
Вот мой код
ajax.php
<script>
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true
});
});
</script>
</head>
<body>
<br/>
Drop1
<?php
$mysqli = new mysqli("localhost", "root", "", "2015");
$combo = $mysqli->query("SELECT * FROM category GROUP BY cat_code ORDER BY id");
$option = '';
while($row = $combo->fetch_assoc())
{
$option .= '<option value = "'.$row['cat_code'].'">'.$row['category'].'</option>';
}
?>
<select id="main" name="main">
<option value="" disabled="disabled" selected="selected">Choose</option>
<?php echo $option; ?>
</select>
Auto Complete <input id="tag">
<script type="text/javascript">
$('#main').change(function(){
$.ajax({
url : 'getajax.php',
data :{mainlist_id : $(this).val()},
dataType:'html',
type:'POST',
success:function(data){
$('#tag').html(data);
}
});
});
</script>
getajax.php
В здесь я выкладываю значение в другом выпадающем списке, но не мне нужно размещать в текстовом поле.
<?php
if (isset($_POST["mainlist_id"])) {
$mysqli = new mysqli("localhost", "root", "", "2015");
$main = $mysqli->real_escape_string($_POST["mainlist_id"]);
$result1 = $mysqli->query("SELECT * FROM code WHERE cat_code='$main' GROUP BY item_code ORDER BY item");
while($row = $result1->fetch_assoc())
{
?>
<option value ="<?php echo $row['item_code'];?>"><?php echo $row['item'];?></option>';
<?php
}
}
?>
autocomplete.php
<?php
//$q=$_GET['q'];
$mysqli = new mysqli("localhost", "root", "", "2015") or die("Database Error");
$auto = $mysqli->real_escape_string($_GET["q"]);
//$main = $mysqli->real_escape_string($_POST["mainlist_id"]); AND cat_code='$main'
$sql = $mysqli->query("SELECT * FROM code WHERE item LIKE '%$auto%' GROUP BY id ORDER BY item");
if($sql)
{
while($row=mysqli_fetch_array($sql))
{
echo $row['item']."\n";
}
}
?>
Что происходит, когда вы запускаете свой код? – Lupin
@ Lupin, когда я запускаю код и пытаюсь ввести в поле #tag, ничего не отображается – user3318208
Вы отлаживали его? попробуйте оповестить или использовать console.log для переменной данных при успехе AJAX – Lupin