JavaScript二级联动是指在一个网页表单中,当用户选择一个下拉菜单(select元素)的选项时,另一个下拉菜单的选项会根据第一个下拉菜单的选择而动态改变。这种交互效果常用于分类筛选、地区选择等场景。
通过JavaScript监听第一个下拉菜单的change事件,根据选择的值动态修改第二个下拉菜单的option元素。
以下是一个简单的静态二级联动示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>二级联动示例</title>
</head>
<body>
<select id="province">
<option value="">请选择省份</option>
<option value="北京">北京</option>
<option value="上海">上海</option>
</select>
<select id="city">
<option value="">请选择城市</option>
</select>
<script>
const provinceSelect = document.getElementById('province');
const citySelect = document.getElementById('city');
const cities = {
"北京": ["北京市"],
"上海": ["上海市"]
};
provinceSelect.addEventListener('change', function() {
const selectedProvince = this.value;
citySelect.innerHTML = '<option value="">请选择城市</option>'; // 清空城市选项
if (selectedProvince && cities[selectedProvince]) {
cities[selectedProvince].forEach(city => {
const option = document.createElement('option');
option.value = city;
option.textContent = city;
citySelect.appendChild(option);
});
}
});
</script>
</body>
</html>change事件监听器正确绑定。通过以上方法,可以有效实现并优化JavaScript二级联动功能,提升用户体验和应用性能。