jQuery实现的多选框多级联动插件


Posted in Javascript onMay 02, 2014

jQuery 实现的多选框联动插件

// 使用:$(_event_src_).autoSelect(_reload_, reload_url); 
// 前台用get方法传输<select>标签的属性"name"和选中<option>的属性"value" 
// 后台用json格式传输数据 
// 格式: { value:<option>的属性"value", text:<option>的显示文本 } 
(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 = $("<option></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);
Javascript 相关文章推荐
JQuery 浮动导航栏实现代码
Aug 27 Javascript
JavaScript 一道字符串分解的题目
Aug 03 Javascript
JQuery 在线引用及测试引用是否成功
Jun 24 Javascript
javascript实现起伏的水波背景效果
May 16 Javascript
chrome下判断点击input上标签还是其余标签的实现方法
Sep 18 Javascript
Bootstrap 3.x打印预览背景色与文字显示异常的解决
Nov 06 Javascript
利用Chrome DevTools直接调试Node.js和JavaScript的方法详解(并行)
Feb 16 Javascript
JQuery.dataTables表格插件添加跳转到指定页
Jun 09 jQuery
JavaScript创建对象的七种方式(推荐)
Jun 26 Javascript
JS判断Android、iOS或浏览器的多种方法(四种方法)
Jun 29 Javascript
React 高阶组件入门介绍
Jan 11 Javascript
vue发送ajax请求详解
Oct 09 Javascript
自己使用js/jquery写的一个定制对话框控件
May 02 #Javascript
将form表单中的元素转换成对象的方法适用表单提交
May 02 #Javascript
jQuery简单图表peity.js使用示例
May 02 #Javascript
jsPDF导出pdf示例
May 02 #Javascript
ExtJS4利根据登录后不同的角色分配不同的树形菜单
May 02 #Javascript
ExtJS4给Combobox设置列表中的默认值示例
May 02 #Javascript
ExtJS4如何自动生成控制grid的列显示、隐藏的checkbox
May 02 #Javascript
You might like
数字转英文
2006/12/06 PHP
php根据身份证号码计算年龄的实例代码
2014/01/18 PHP
laravel5.1框架基础之Blade模板继承简单使用方法分析
2019/09/05 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
2020/02/10 PHP
实例化php类时传参的方法分析
2020/06/05 PHP
如何用javascript去掉字符串里的所有空格
2007/02/08 Javascript
jQuery库与其他JS库冲突的解决办法
2010/02/07 Javascript
javascript 静态对象和构造函数的使用和公私问题
2010/03/02 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
新增加的内容是如何将div的scrollbar自动移动最下面
2014/01/02 Javascript
js调试系列 断点与动态调试[基础篇]
2014/06/18 Javascript
js实现点击后将文字或图片复制到剪贴板的方法
2014/08/04 Javascript
js实现当复选框选择匿名登录时隐藏登录框效果
2015/08/14 Javascript
Node做中转服务器转发接口
2017/10/18 Javascript
详解Angular中通过$location获取地址栏的参数
2018/08/02 Javascript
使用vue.js在页面内组件监听scroll事件的方法
2018/09/11 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
Vue实现回到顶部和底部动画效果
2019/07/31 Javascript
JS删除数组指定值常用方法详解
2020/06/04 Javascript
python解析html开发库pyquery使用方法
2014/02/07 Python
python 3.0 模拟用户登录功能并实现三次错误锁定
2017/11/01 Python
使用Python画股票的K线图的方法步骤
2019/06/28 Python
Python求两点之间的直线距离(2种实现方法)
2019/07/07 Python
如何让python的运行速度得到提升
2020/07/08 Python
全网最详细的PyCharm+Anaconda的安装过程图解
2021/01/25 Python
潘多拉意大利官方网上商城:网上选购PANDORA珠宝
2018/10/07 全球购物
Shein英国:女性时尚网上商店
2019/04/10 全球购物
文明之星事迹材料
2014/05/09 职场文书
化学教育专业求职信
2014/07/08 职场文书
学校四风问题对照检查材料思想汇报
2014/09/26 职场文书
2016年高校自主招生自荐信范文
2015/03/24 职场文书
起诉书范文
2015/05/20 职场文书
职场:企业印章管理制度(模板)
2019/10/18 职场文书
CSS中实现动画效果-附案例
2022/02/28 HTML / CSS
yolov5返回坐标的方法实例
2022/03/17 Python
Python中的嵌套循环详情
2022/03/23 Python