当前位置:首页 > jquery

jquery二级联动

2026-04-08 11:28:01jquery

jQuery 实现二级联动的方法

二级联动通常指两个下拉菜单(<select>)之间的动态关联,即第一个下拉菜单的选择会影响第二个下拉菜单的选项内容。以下是实现方法:

基本HTML结构

创建两个下拉菜单,并为第一个菜单绑定change事件:

jquery二级联动

<select id="province">
  <option value="">请选择省份</option>
  <option value="gd">广东省</option>
  <option value="zj">浙江省</option>
</select>

<select id="city">
  <option value="">请选择城市</option>
</select>

数据准备

使用对象存储二级联动数据:

jquery二级联动

const cityData = {
  gd: ["广州", "深圳", "珠海"],
  zj: ["杭州", "宁波", "温州"]
};

jQuery 事件绑定

监听省份下拉菜单的变化,动态更新城市下拉菜单:

$("#province").change(function() {
  const provinceId = $(this).val();
  const $citySelect = $("#city");

  $citySelect.empty().append('<option value="">请选择城市</option>');

  if (provinceId && cityData[provinceId]) {
    $.each(cityData[provinceId], function(index, cityName) {
      $citySelect.append(`<option value="${cityName}">${cityName}</option>`);
    });
  }
});

动态加载数据(可选)

如果需要从后端加载数据:

$("#province").change(function() {
  const provinceId = $(this).val();

  $.get("/api/cities?province=" + provinceId, function(data) {
    const $citySelect = $("#city");
    $citySelect.empty();

    $.each(data, function(index, item) {
      $citySelect.append(`<option value="${item.id}">${item.name}</option>`);
    });
  });
});

注意事项

  • 确保在DOM加载完成后执行脚本,可以将代码放在$(document).ready()
  • 对于动态生成的元素,可能需要使用事件委托
  • 清空二级菜单时保留默认选项(如“请选择”)
  • 考虑添加加载状态提示(如禁用下拉菜单或显示loading图标)

完整示例

<script>
$(function() {
  const cityData = {
    gd: ["广州", "深圳", "珠海"],
    zj: ["杭州", "宁波", "温州"]
  };

  $("#province").change(function() {
    const provinceId = $(this).val();
    const $citySelect = $("#city");

    $citySelect.empty().append('<option value="">请选择城市</option>');

    if (provinceId && cityData[provinceId]) {
      $.each(cityData[provinceId], function(index, cityName) {
        $citySelect.append(`<option value="${cityName}">${cityName}</option>`);
      });
    }
  });
});
</script>

标签: jquery
分享给朋友:

相关文章

jquery插件库

jquery插件库

jQuery插件库推荐 jQuery插件库提供了丰富的扩展功能,帮助开发者快速实现常见的前端交互效果。以下是一些常用的jQuery插件库和资源: 1. 官方jQuery插件注册中心jQuery Pl…

jquery版本

jquery版本

jQuery是一个快速、简洁的JavaScript库,用于简化HTML文档遍历、事件处理、动画设计和Ajax交互。以下是关于jQuery版本的详细信息: jQuery版本分类 jQuery主要分为三…

jquery页面

jquery页面

jQuery 页面操作指南 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互的操作。以下是 jQuery 在页面中的常见使用方法…

jquery实现

jquery实现

以下是关于jQuery实现的常见应用场景及方法,分为核心功能模块说明: DOM操作 使用$()选择器获取元素后,可通过链式调用方法操作DOM: $('#element').html('新内容').…

jquery 判断

jquery 判断

jQuery 判断元素是否存在 使用 jQuery 判断元素是否存在通常通过检查选择器匹配的元素长度来实现。如果长度大于 0,表示元素存在;否则不存在。 if ($('selector').leng…

jquery格式

jquery格式

jQuery 基本格式 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。以下是 jQuery 的基本使用格式: $(docu…