使用jQuery实现联动效果通常涉及到使用<select>
元素来创建下拉菜单,并使用jQuery来处理不同选择的变化。以下是实现三级和四级联动的基本示例:
HTML部分:
<select id="province">
<option value="">请选择省份</option>
</select>
<select id="city">
<option value="">请选择城市</option>
</select>
<!-- 三级联动 -->
<select id="district">
<option value="">请选择区/县</option>
</select>
<!-- 四级联动 -->
<select id="town">
<option value="">请选择街道</option>
</select>
JavaScript部分(jQuery):
$(document).ready(function() {
// 示例数据
var provinces = [
{name: "省份A", cities: ["城市A1", "城市A2"]},
{name: "省份B", cities: ["城市B1", "城市B2"]}
];
// 填充省份
for (var i = 0; i < provinces.length; i++) {
$('#province').append($('<option>', {
value: i,
text: provinces[i].name
}));
}
// 省份变化时更新城市
$('#province').change(function() {
var index = $(this).val();
var cities = provinces[index].cities;
$('#city').empty(); // 清空城市下拉菜单
for (var i = 0; i < cities.length; i++) {
$('#city').append($('<option>', {
value: i,
text: cities[i]
}));
}
// 城市变化时更新区/县
$('#city').change(function() {
var cityIndex = $(this).val();
var districts = cities[cityIndex].districts; // 假设每个城市有districts属性
$('#district').empty(); // 清空区/县下拉菜单
for (var i = 0; i < districts.length; i++) {
$('#district').append($('<option>', {
value: i,
text: districts[i]
}));
}
// 如果需要四级联动,在这里继续添加change事件处理函数
});
});
// 如果需要四级联动
// $('#district').change(function() {
// ...
// });
});
请注意,示例中的provinces
、cities
和districts
数组应该替换为实际的省份、城市和区/县数据。这只是一个简单的示例,实际应用中可能需要从服务器获取数据或使用更复杂的逻辑。