У меня есть вход, который генерирует позиционированный неупорядоченный список, когда кто-то вводит ключ в него, и он находит совпадение через БД.
проблема в том, что при нажатии на элемент списка не заполняется поле ввода. это очень просто и должно работать.
вот мой HTML:
<p style="position: relative;">
<input id="qbid" value="Enter Customer Name" size="40" />
<div id="qbid_res"></div>
</p>
вот мой jquery:
$('#qbid_res ul li a').click(function(e) {
e.preventDefault();
$('#qbid').val($(this).html());
$('#qbid_res').css('display', 'none');
});
$('#qbid').keyup(function() {
$.ajax({
type: "POST",
url: "ajax-qbid.php",
data: { name : $('#qbid').val() },
dataType: "text",
success: function(data){
if (data.length > 0)
{
$('#qbid_res').html(data);
$('#qbid_res').css('display', 'block');
}
}
});
});
вот мой php / mysql в ajax-qbid.php:
<ul>
<?php
include 'connect.php';
$sql = mysql_query("select `name` from `customers` where `name` like '%".mysql_real_escape_string($_POST['name'])."%' order by `name` asc");
while ($row = mysql_fetch_assoc($sql))
echo '<li><a href="#">'.$row['name'].'</a></li>';
?>
</ul>
до того, как я ввел код ajax, он работал нормально. я имею в виду, что он показывает список, когда я ввожу значение, которое будет совпадать в БД, но, как я уже сказал, нажатие на одно из имен не заполняет поле ввода.