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 相关文章推荐
ext实现完整的登录代码
Aug 08 Javascript
jquery插件开发注意事项小结
Jun 04 Javascript
原生javascript实现隔行换色
Jan 04 Javascript
JavaScript事件学习小结(五)js中事件类型之鼠标事件
Jun 09 Javascript
基于JS代码实现实时显示系统时间
Jun 16 Javascript
Vue.js实现简单动态数据处理
Feb 13 Javascript
Javascript 链式作用域详细介绍
Feb 23 Javascript
js判断手机系统是android还是ios
Mar 07 Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
May 03 Javascript
mockjs,json-server一起搭建前端通用的数据模拟框架教程
Dec 18 Javascript
微信小程序如何获取用户收货地址
Nov 27 Javascript
JavaScript基础之静态方法和实例方法分析
Dec 26 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 zend解密软件绿色版测试可用
2008/04/14 PHP
php中simplexml_load_string使用实例分享
2014/02/13 PHP
php实现文件下载代码分享
2014/08/19 PHP
php准确计算复活节日期的方法
2015/04/18 PHP
Linux环境下php实现给网站截图的方法
2016/05/03 PHP
获取Javscript执行函数名称的方法
2006/12/22 Javascript
jquery tools之tooltip
2009/07/25 Javascript
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
JS+CSS实现大气的黑色首页导航菜单效果代码
2015/09/10 Javascript
深入学习jQuery Validate表单验证
2016/01/18 Javascript
Java框架SSH结合Easyui控件实现省市县三级联动示例解析
2016/06/12 Javascript
jQuery EasyUI Accordion可伸缩面板组件使用详解
2017/02/28 Javascript
ECMAscript 变量作用域总结概括
2017/08/18 Javascript
webpack4 css打包压缩问题的解决
2018/05/18 Javascript
详解angular部署到iis出现404解决方案
2018/08/14 Javascript
react-router 路由切换动画的实现示例
2018/12/03 Javascript
小程序server请求微信服务器超时的解决方法
2019/05/21 Javascript
浅谈Vue组件单元测试究竟测试什么
2020/02/05 Javascript
JQuery使用数组遍历跳出each循环
2020/09/01 jQuery
使用Python写个小监控
2016/01/27 Python
基于Python实现对PDF文件的OCR识别
2016/08/05 Python
Python列表删除的三种方法代码分享
2017/10/31 Python
Python反转序列的方法实例分析
2018/03/21 Python
用python 批量更改图像尺寸到统一大小的方法
2018/03/31 Python
Opencv+Python实现图像运动模糊和高斯模糊的示例
2019/04/11 Python
python GUI库图形界面开发之PyQt5窗口类QMainWindow详细使用方法
2020/02/26 Python
浅谈Django前端后端值传递问题
2020/07/15 Python
八一建军节部队活动方案
2014/02/04 职场文书
乡镇干部十八大感言
2014/02/17 职场文书
公司业务员岗位职责
2014/03/18 职场文书
世博会口号
2014/06/20 职场文书
乒乓球兴趣小组活动总结
2014/07/08 职场文书
暑期政治学习心得体会
2014/09/02 职场文书
2014报到证办理个人委托书
2014/10/08 职场文书
2015财务年终工作总结范文
2015/05/22 职场文书
【TED出品】天梯非主流开心游1700 划水骑士
2022/03/31 魔兽争霸