jQuery 实现的多选框联动插件
Snowy(SnowyAdmin)快速开发平台3.5.1
Snowy(SnowyAdmin)是国内首个国密前后端分离快速开发平台,集成国密加解密插件, 软件层面完全符合等保测评要求,同时实现国产化机型、中间件、数据库适配,是您的不二之选! 技术框架与密码结合,让更多的人认识密码,使用密码;更是让前后分离“密”不可分。采用SpringBoot+MybatisPlus+AntDesignVue+Vite 等更多组件及前沿技术开发,注释丰富,代码简洁,开箱即用
下载
// 使用:$(_event_src_).autoSelect(_reload_, reload_url); // 前台用get方法传输标签的属性"name"和选中的属性"value" // 后台用json格式传输数据 // 格式: { value:
的属性"value", text:
的显示文本 } (function($) { $.fn.extend({ autoSelect: function(dest, url) { return this.each(function() { $.SelectChange($(this), $(dest), url); }); }, }); // 重置复选框 $.SelectReset = function(target) { if (target != null) { $.SelectReset(target.data("nextSelect")); target.empty(); target.append(target.data("defaultOpt")); } }; // 加载复选框 $.SelectLoad = function(target, data) { $.each(data, function(index, content) { var option = $("
") .attr("value", content.value).text(content.text); target.append(option); }); }; // 绑定 change 事件 $.SelectChange = function(target, dest, url) { // 绑定联动链 target.data("nextSelect", dest); // 记录默认选项(first option) if (target.data("defaultOpt") == null) target.data("defaultOpt", target.children().first()); dest.data("defaultOpt", dest.children().first()); $(document).ready(function() { target.change(function(event) { var _target = event.target || window.event.srcElement; if (_target.value != target.data("defaultOpt").attr("value")) { $.getJSON(url, { "name": _target.name, "value": _target.value }, function(data, status) { if (status == "success") { $.SelectReset(target.data("nextSelect")); $.SelectLoad(target.data("nextSelect"), data); } }); // 后台以 json 格式传输数据 } else { $.SelectReset(target.data("nextSelect")); } }); }); }; })(jQuery);