2

我有这个选择,我们称之为“X”,它通过选择从数据库中填充汽车品牌作为选项。

<select name="X">
<?php
$row = mysqli_query("SELECT * FROM brands");
while($row2 = mysqli_fetch_array($row))
echo '<option value="' . $row2['brandID'] . '">' . $row2['brandName'] . '</option>
?>
</select>

现在我必须填充第二个选择,称为“Y”,其中包含所选品牌的模型细节。

例如,如果在第一个选择框 (X) 中选择的选项是奥迪,我应该在第二个选择 (Y) 中具有以下选项:A4、A6、TT、TTs

手动填充第二个选择框很容易,与第一个选择框基本相同,只是使用不同的 SQL 请求。

$row = mysqli_query("SELECT modelName from modele WHERE brandName = '$brand'");

根据第一个选择的选择,$brand 将具有价值。

谢谢

4

2 回答 2

8
Put an id in your <select name="X"> code like <select name="X" id ="X">

Put another select like <select name="Y" id="Y">. Which will be blank.

put this jquery in your page.

$("X").on("change",function(){
    var x_value=$("X").val();
    $.ajax({
        url:'ajax.php',
        data:{brand:x_value},
        type: 'post',
        success : function(resp){
            $("#Y").html(resp);               
        },
        error : function(resp){}
    });
});

in your ajax.php add the query.

<?php
$row = mysqli_query("SELECT modelName from modele WHERE brandName =".$_POST['brand']);
while($row2 = mysqli_fetch_array($row))
    echo '<option value="' . $row2['modelId'] . '">' . $row2['modelName'] . '</option>
?>

希望它会奏效。如果您需要任何东西,请告诉我。

于 2013-06-12T10:35:47.707 回答
0

一起使用 ajax 和 on change 事件,

方法:1-建立一个页面,您可以在其中发布查询。2-该页面应该对查询做出反应并发送带有所需选项列表的响应。例子 :

if ($_POST["vehicle"] == car) // send response with array of car names as json obj for example
else // send response with array of motorbikes names

您的 ajax 应该会收到它并填写完整的归档文件。

如果您需要更多详细信息,我很乐意提供

于 2013-06-12T10:09:49.767 回答