Java三级联动代码是指在一个网页中实现下拉框的联动效果,即当用户选择一个一级选项时,对应的二级选项会自动显示;当用户选择一个二级选项时,对应的三级选项会自动显示。这种功能通常用于城市选择、省份选择等场景。
以下是一个简单的Java三级联动代码示例:
- 首先,我们需要创建一个HTML文件,包含三个下拉框(select标签):
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>三级联动示例</title>
</head>
<body>
<select id="province"></select>
<select id="city"></select>
<select id="area"></select>
<script src="main.js"></script>
</body>
</html>
- 然后,我们需要创建一个JavaScript文件(main.js),编写三级联动的逻辑:
// 模拟数据
const provinceData = [
{ id: 1, name: '广东省', cities: [{ id: 11, name: '广州市' }, { id: 12, name: '深圳市' }] },
{ id: 2, name: '江苏省', cities: [{ id: 21, name: '南京市' }, { id: 22, name: '苏州市' }] }
];
// 获取元素
const provinceSelect = document.getElementById('province');
const citySelect = document.getElementById('city');
const areaSelect = document.getElementById('area');
// 初始化省份下拉框
function initProvince() {
provinceData.forEach(item => {
const option = document.createElement('option');
option.value = item.id;
option.textContent = item.name;
provinceSelect.appendChild(option);
});
}
// 初始化城市下拉框
function initCity() {
const selectedProvinceId = provinceSelect.value;
const selectedProvince = provinceData.find(item => item.id === parseInt(selectedProvinceId));
if (selectedProvince) {
citySelect.innerHTML = ''; // 清空城市下拉框
selectedProvince.cities.forEach(item => {
const option = document.createElement('option');
option.value = item.id;
option.textContent = item.name;
citySelect.appendChild(option);
});
} else {
citySelect.innerHTML = ''; // 清空城市下拉框
}
}
// 初始化区域下拉框
function initArea() {
const selectedCityId = citySelect.value;
const selectedCity = provinceData.find(item => item.id === parseInt(selectedCityId))?.cities.find(item => item.id === parseInt(selectedCityId));
if (selectedCity) {
areaSelect.innerHTML = ''; // 清空区域下拉框
selectedCity.areas.forEach(item => {
const option = document.createElement('option');
option.value = item.id;
option.textContent = item.name;
areaSelect.appendChild(option);
});
} else {
areaSelect.innerHTML = ''; // 清空区域下拉框
}
}
// 监听省份下拉框的变化事件
provinceSelect.addEventListener('change', initCity);
// 监听城市下拉框的变化事件
citySelect.addEventListener('change', initArea);
// 初始化省份下拉框
initProvince();
这个示例中,我们首先创建了一个包含省份、城市和区域的JSON数组作为模拟数据。然后,我们通过JavaScript获取了页面中的三个下拉框元素,并编写了初始化省份、城市和区域下拉框的函数。最后,我们为省份和城市下拉框添加了变化事件监听器,当用户选择不同的省份或城市时,会自动更新对应的区域下拉框。