基于AJAX的级联下拉菜单三级以上 html完整版
时间: 2023-10-25 15:06:32 浏览: 206
以下是一个基于 AJAX 的三级以上级联下拉菜单的 HTML 完整版。
```html
<!DOCTYPE html>
<html>
<head>
<title>级联下拉菜单</title>
<meta charset="UTF-8">
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
// 第一级下拉列表
$('#level1').change(function(){
var selectedValue = $(this).val();
if(selectedValue != ''){
$.ajax({
type: 'POST',
url: 'level2.php',
data: {selectedValue: selectedValue},
dataType: 'json',
success: function(response){
var options = '<option value="">请选择</option>';
$.each(response, function(index, item){
options += '<option value="' + item.value + '">' + item.label + '</option>';
});
$('#level2').html(options);
$('#level3').html('<option value="">请选择</option>');
}
});
} else {
$('#level2').html('<option value="">请选择</option>');
$('#level3').html('<option value="">请选择</option>');
}
});
// 第二级下拉列表
$('#level2').change(function(){
var selectedValue = $(this).val();
if(selectedValue != ''){
$.ajax({
type: 'POST',
url: 'level3.php',
data: {selectedValue: selectedValue},
dataType: 'json',
success: function(response){
var options = '<option value="">请选择</option>';
$.each(response, function(index, item){
options += '<option value="' + item.value + '">' + item.label + '</option>';
});
$('#level3').html(options);
}
});
} else {
$('#level3').html('<option value="">请选择</option>');
}
});
});
</script>
</head>
<body>
<div>
<label for="level1">第一级:</label>
<select id="level1">
<option value="">请选择</option>
<option value="1">选项1</option>
<option value="2">选项2</option>
<option value="3">选项3</option>
</select>
</div>
<div>
<label for="level2">第二级:</label>
<select id="level2">
<option value="">请选择</option>
</select>
</div>
<div>
<label for="level3">第三级:</label>
<select id="level3">
<option value="">请选择</option>
</select>
</div>
</body>
</html>
```
上述代码中,每个下拉列表都通过 AJAX 请求获取下一级的选项。在第一级下拉列表的 `change` 事件中,发送 POST 请求到 `level2.php` 文件,并传递选中的值 `selectedValue`。服务器返回 JSON 数据,将其转换为选项并添加到第二级下拉列表中。如果没有选择任何选项,则清空第二级和第三级下拉列表。
同样,在第二级下拉列表的 `change` 事件中,发送 POST 请求到 `level3.php` 文件,并传递选中的值 `selectedValue`。服务器返回 JSON 数据,将其转换为选项并添加到第三级下拉列表中。如果没有选择任何选项,则清空第三级下拉列表。
需要注意的是,服务器端的 PHP 文件需要根据传递的参数来返回相应的下一级选项。这里只提供 HTML 和 JavaScript 的代码,PHP 文件需要根据实际需求编写。
阅读全文