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 相关文章推荐
js DOM模型操作
Dec 28 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
Mar 04 Javascript
求数组最大最小值方法适用于任何数组
Aug 16 Javascript
jquery代码实现简单的随机图片瀑布流效果
Apr 20 Javascript
初识Javascript小结
Jul 16 Javascript
利用angular.copy取消变量的双向绑定与解析
Nov 25 Javascript
微信小程序 开发之滑块视图容器(swiper)详解及实例代码
Feb 22 Javascript
微信小程序发送短信验证码完整实例
Jan 07 Javascript
详解小程序毫秒级倒计时(适用于拼团秒杀功能)
May 05 Javascript
使用Vue开发自己的Chrome扩展程序过程详解
Jun 21 Javascript
JavaScript 如何在浏览器中使用摄像头
Dec 02 Javascript
js实现验证码干扰(静态)
Feb 22 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
php中计算程序运行时间的类代码
2012/11/03 PHP
ThinkPHP验证码和分页实例教程
2014/08/22 PHP
php制作文本式留言板
2015/03/18 PHP
Javascript注入技巧
2007/06/22 Javascript
js中switch case循环实例代码
2013/12/30 Javascript
js 绑定键盘鼠标事件示例代码
2014/02/12 Javascript
Js获取图片原始宽高的实现代码
2016/05/17 Javascript
js实现页面a向页面b传参的方法
2016/05/29 Javascript
javascript验证手机号和实现星号(*)代替实例
2016/08/16 Javascript
Vue表单实例代码
2016/09/05 Javascript
vue.js移动端tab组件的封装实践实例
2017/06/30 Javascript
Vue2.2.0+新特性整理及注意事项
2018/08/22 Javascript
JavaScript HTML DOM元素 节点操作汇总
2019/07/29 Javascript
JavaScript实现文件下载并重命名代码实例
2019/12/12 Javascript
使用Angular9和TypeScript开发RPG游戏的方法
2020/03/25 Javascript
python实现定制交互式命令行的方法
2014/07/03 Python
python采用getopt解析命令行输入参数实例
2014/09/30 Python
python执行使用shell命令方法分享
2017/11/08 Python
详解Python使用tensorflow入门指南
2018/02/09 Python
python selenium 对浏览器标签页进行关闭和切换的方法
2018/05/21 Python
为什么你还不懂得怎么使用Python协程
2019/05/13 Python
python多进程间通信代码实例
2019/09/30 Python
使用python远程操作linux过程解析
2019/12/04 Python
python 定义类时,实现内部方法的互相调用
2019/12/25 Python
Python中 Global和Nonlocal的用法详解
2020/01/20 Python
Pyspark读取parquet数据过程解析
2020/03/27 Python
python语音识别指南终极版(有这一篇足矣)
2020/09/09 Python
HTML5-WebSocket实现聊天室示例
2016/12/15 HTML / CSS
新西兰杂志订阅:isubscribe
2019/08/26 全球购物
应用心理学个人求职信范文
2013/12/11 职场文书
土木工程专业推荐信
2014/02/19 职场文书
学雷锋的心得体会
2014/09/04 职场文书
护士工作失误检讨书
2014/09/14 职场文书
教师个人年度总结
2015/02/11 职场文书
整脏治乱工作简报
2015/07/21 职场文书
WebRTC记录音视频流(web技术分享)
2022/02/24 Javascript