Php 基于下拉值的自动完成
我试图做自动完成功能的基础上下拉选择值 My index.php页面:Php 基于下拉值的自动完成,php,jquery,Php,Jquery,我试图做自动完成功能的基础上下拉选择值 My index.php页面: <div>Select City</div> <select id="city"> <option value="select">Select</option> <option value="Chennai">Chennai</option> <option value="Madurai
<div>Select City</div>
<select id="city">
<option value="select">Select</option>
<option value="Chennai">Chennai</option>
<option value="Madurai">Madurai</option>
<option value="Salem">Salem</option>
<option value="Trichy">Trichy</option>
</select><br />
<input type="text" id="search" />
<script>
$(document).ready(function(){
$('#search').autocomplete({
minLength: 1,
source: function(query, process) {
var res = $('#city').val();
$.ajax({
url: 'autocomplete.php',
type: 'GET',
data: "src="+res + "&value=" + $('#search').val(),
dataType: 'JSON',
async: true,
success: function(data) {
process(data);
}
});
}
});
});
</script>
<?php
if (isset($_GET['src'])) {
$city = $_GET['src'];
echo $city;
}
?>
<?php
$loc = $_GET['value'];
echo $loc;
$conn=mysql_connect('localhost', 'root', '');
if (!$conn)
{
die('Could not connect: ' . mysql_error());
}
if(!mysql_select_db("details"))
{
die('Could not connect database: ' . mysql_error());
}
$sql="SELECT localty FROM localty where localty like '%".$loc."%' and city='$city'";
echo $sql;
$result = mysql_query($sql);
if($result)
{
while($row=mysql_fetch_array($result))
{
echo $row['localty']."\n";
}
}
?>
我的autocomplete.php页面:
<div>Select City</div>
<select id="city">
<option value="select">Select</option>
<option value="Chennai">Chennai</option>
<option value="Madurai">Madurai</option>
<option value="Salem">Salem</option>
<option value="Trichy">Trichy</option>
</select><br />
<input type="text" id="search" />
<script>
$(document).ready(function(){
$('#search').autocomplete({
minLength: 1,
source: function(query, process) {
var res = $('#city').val();
$.ajax({
url: 'autocomplete.php',
type: 'GET',
data: "src="+res + "&value=" + $('#search').val(),
dataType: 'JSON',
async: true,
success: function(data) {
process(data);
}
});
}
});
});
</script>
<?php
if (isset($_GET['src'])) {
$city = $_GET['src'];
echo $city;
}
?>
<?php
$loc = $_GET['value'];
echo $loc;
$conn=mysql_connect('localhost', 'root', '');
if (!$conn)
{
die('Could not connect: ' . mysql_error());
}
if(!mysql_select_db("details"))
{
die('Could not connect database: ' . mysql_error());
}
$sql="SELECT localty FROM localty where localty like '%".$loc."%' and city='$city'";
echo $sql;
$result = mysql_query($sql);
if($result)
{
while($row=mysql_fetch_array($result))
{
echo $row['localty']."\n";
}
}
?>
根据city selection下拉列表值,在搜索文本框中输入第一个字母时应显示localty。但我在autocomplete.php页面中没有得到值
请给出任何建议。试试这个
<script>
$(document).ready(function(){
$('#city').change(function(){
$('#search').autocomplete({
minLength: 1,
source: function(query, process) {
var res = $('#city').val();
$.ajax({
url: 'autocomplete.php',
type: 'GET',
data: "src="+res + "&value=" + $('#search').val(),
dataType: 'JSON',
async: true,
success: function(data) {
process(data);
}
});
});
}
});
});
</script>
您缺少selectcheck的更改事件功能-您将向autocomplete发送什么。php此处应在@Unicorahul添加更改事件将您的autocomplete功能放在selectcheck的更改事件中从获取参考