我看到有人问过类似的问题,但没有一个人回答我的问题。我有一个关于 ajax 和 php 的问题。在他们两个中,我都是相对初学者。
我尝试做的是一个所谓的:链式选择框。我想要2个下拉菜单。当我从第一个值中选择一个值时,第二个下拉菜单会从 mysql 数据库中填充。
为此,我使用 jquery、ajax、php 和 mysql。
我试图在网上找到一些例子,但它们对我来说似乎都相当复杂(我想是因为我是初学者)。
我决定自己做一些东西,但我被堆积了。我不确定逻辑是否正确。
所以我们开始(我将在这里只包含相关代码):
使用 jquery 我发送一个 ajax 请求:
$("#loc").change(function(){
var val = ($('#loc').val());
$.ajax({
type:'POST',
url:'query.php',
data: {val:val},
success:function(response){
$("#x").html(response);
} });
});
“loc”是第一个下拉菜单的 id。我得到值并将其发送到 query.php
query.php 有以下几行代码:
<?php
include('connect.php');
$area = $_POST['val'];
$query ="SELECT DISTINCT activity FROM main ORDER BY 1 where n_city='$area'";
$result = mysqli_query($dbcon, $query) or die('no available data');
$options="";
while ($row=mysqli_fetch_array($result, MYSQLI_ASSOC)){
$activity=$row["activity"];
}
?>
现在我想弄清楚两件事。1)我应该在成功函数中返回什么,以便获得一个填充了查询结果的表单?2)其次也是最重要的,我的想法实际上是正确的还是我遗漏了一些逻辑错误?
非常感谢。迪米特里斯