我有一个有两个选择下拉列表的表单。一个是国家,一个是大学。国家下拉列表是从MySQL数据库填充的,显示输入的所有国家。起初,我希望大学下拉列表填充系统中的所有大学,但最终用户希望系统是动态的,并随着它的进行而学习,所以此时下拉列表没有显示任何数据。
<select name="academicdropdown" onchange="countrysortlist()" style="width:178px">
<option value"">Sort By Country</option>
<option value"All" style="font-weight:bold; font-style:italic">All Countries</option>
<?php
while ($row=mysqli_fetch_array($countryresult2)) {
$id = $row["country_id"];
$country = $row["country"];
echo "<option value='$id'>$country</option>\n";
}
?>
</select>
<select name="universitydropdown" onclick="unilist()" style="width:154px">
<option value"">University</option>
<?php
if(isset($_SESSION['appformuniversity'])) {
if($_SESSION['appformacademic'] == "universitylist") {
$universityinput = $_SESSION['appformuniversitylist'];
while ($row=mysqli_fetch_array($universityresult)) {
$universityid = $row["university_id"];
$university = $row["university_name"];
if($universityid == $universityinput) {
echo "<option value='$universityid' selected='selected'>$university</option>\n";
}
else {
echo "<option value='$universityid'>$university</option>\n";
}
}
}
else {
while ($row=mysqli_fetch_array($universityresult)) {
$universityid = $row["university_id"];
$university = $row["university_name"];
echo "<option value='$universityid'>$university</option>\n";
}
}
}
else {
while ($row=mysqli_fetch_array($universityresult)) {
$universityid = $row["university_id"];
$university = $row["university_name"];
echo "<option value='$universityid'>$university</option>\n";
}
}
?>
</select></td></tr>
我想做的是,当用户在国家下拉列表中选择一个国家时,它将更新大学下拉列表中该国家内的大学。我知道你必须使用onchange事件,但我不知道如何编写脚本。如有任何帮助,我们将不胜感激。
我现在的大学问题是
$universitysql = "SELECT * FROM university ORDER BY university_name ASC" ;
提前感谢您的帮助。非常感谢。
2条答案
按热度按时间cngwdvgl1#
您可以使用javascript执行以下操作:
当您更改选择选项时,站点将更新提交表单
然后查询将只加载提交的国家id内的大学。
4xrmg8kj2#
你必须使用 AJAX 。如果你知道jQuery,这会更容易。只要包含jquery.js文件。然后在国家下拉列表的
onchange
函数中编写AJAX。在onchange
方法中,只需传递国家的ID。然后在AJAX方法中,将ID发送到PHP页面。在该页面中,使用该国家ID从SQL查询生成整个选项列表。在两个表之间建立一个关系,即每一个大学行都应该包含国家ID。然后回显选项列表。在 AJAX 方法中,只需使用innerHTML
动态更改大学列表。我给你举个例子onchange
(国家/地区选择)countrysortlist
函数中 AJAX 方法