【发布时间】:2016-12-22 17:28:22
【问题描述】:
我正在创建一些网站,它有 2 个选择选项菜单,第一个选择国家,第二个选择国家,还有一个使用 ajax 进行实时搜索的搜索栏。 状态菜单是从某个 php 文件中填充的,因为我使用 ajax 将所选国家/地区发送给它。
我想要的是使用 ajax 将所选选项的 ID 从状态菜单发送到另一个 php 页面,这样如果我选择阿拉巴马州并单击搜索栏并开始输入一些阿拉巴马州城市的字母,它只推荐阿拉巴马州的城市
这是我的 ajax 代码:
<script>
function getCity(val){
//var vall = document.getElementById('gadget').value;
$.ajax({
type: "POST",
url: "ajax/city.php",
data:'q='+$(this).val(),
success: function(data){
$("#suggesstion-box").show();
$("#suggesstion-box").html(data);
$("#search-box").css("background","#FFF");
}
});
}
</script>
这是状态菜单:
<select class="form-control" id="txtHint" style="width:120%;" onchange="getCity(this.value)">
<option value="-1"> Select State </option>
</select>
这是 AJAX 文件中的代码:
<?php
if (!empty($_POST["q"])) {
if(!empty($_POST["keyword"])) {
$query ="SELECT `city`,`state_code` FROM `cities` WHERE `S_code` = '".$_POST["q"]."' AND `city` LIKE '" . $_POST["keyword"] . "%' ORDER BY city LIMIT 0,6";
$result = mysql_query($query) ;
if(!empty($result)) {
?>
<ul id="country-list">
<?php
while($row = mysql_fetch_array($result)) {
?>
<li onClick="selectCountry('<?php echo $row["city"]; ?>');"><?php echo $row["city"]." ,".$row["state_code"]; ?></li>
<?php
}
?>
</ul>
<?php
}
}
}
?>
q 值好像是空的
【问题讨论】:
-
你为什么要连接来自
php的li元素?应该是<option>吧? -
否,因为这些会作为建议出现在搜索栏下方
标签: javascript php html ajax web