在PHP中使用onchange函数创建多个从属下拉菜单

时间:2019-04-07 12:59:21

标签: php drop-down-menu onchange

我想使用PHP中的onchange函数创建四个下拉菜单。

“第一个”下拉菜单(“年份”)下的内容是独立的,而“月”下拉列表则取决于“年”选择,“周”下拉列表则取决于“月”选择,“金额”下拉列表则取决于“周”选择。

所有列都在同一表 集合 中,如下所示

Database Table collection

PHP代码:-

<select name="year" id="year">
<option value="">Select</option>;
<?php $select_year=mysqli_query($db,"SELECT * FROM collection");
while ($row=mysqli_fetch_array($select_year)){
$year=$row['Year'];
echo '<option value="'.$row['Year'].'">'.$row['Year'].'</option>';} ?>

<select name="month" id="month" onchange="">
<option value="">Select</option>;
<?php $select_month=mysqli_query($db,"SELECT * FROM collection where Year like '$year'");
while ($row2=mysqli_fetch_array($select_month)){
$month=$row2['Month'];
echo '<option value="'.$row2['Month'].'">'.$row2['Month'].'</option>';} ?>

<select name="week" id="week" onchange="">
<option value="">Select</option>;
<?php $select_week=mysqli_query($db,"SELECT * FROM collection where Month like '$month'");
while ($row3=mysqli_fetch_array($select_week)){
$week=$row3['Week'];
echo '<option value="'.$row3['Week'].'">'.$row3['Week'].'</option>';} ?>

<select name="amount" id="amount" onchange="">
<option value="">Select</option>;
<?php $select_amount=mysqli_query($db,"SELECT * FROM collection where Week like '$week'");
while ($row4=mysqli_fetch_array($select_amount)){
$year=$row4['Amount'];
echo '<option value="'.$row4['Amount'].'">'.$row4['Amount'].'</option>';} ?>
</select>

我知道我的代码不正确,也不知道在onchange =“”中放入什么。 (如有必要,请添加jquery或ajax代码)

1 个答案:

答案 0 :(得分:0)

您要查找的内容称为动态依赖选择框。 这是一个不错的解决方案,涉及到服务器的jQuery / JavaScript和AJAX调用。 您可以详细了解here。该链接还包含一个非常详细的示例。

一个更简单的解决方案涉及更多的jQuery / JavaScript技巧,其中呈现给用户的值已在加载时相互映射。好处是,值的更新速度很快,就像在浏览器中一样,但缺点是JavaScript稍微复杂了一点,不适用于大量相互依赖的选项。

相关问题