jquery select操作的日期联动实现代码


Posted in Javascript onDecember 06, 2009

Jquery的选择器很强大,对select的options对象添加的时候我找了老半天才找到

/**//* 
文件名:jquery.liu.select.js 
功能说明:本js文件为jquery类库的一个插件,主要实现对select的操作. 
作者:John Liu 
编写日期:2008/03/12 
*/ 
//得到select项的个数 
jQuery.fn.size = function() 
{ 
return jQuery(this).get(0).options.length; 
} 
//获得选中项的索引 
jQuery.fn.getSelectedIndex = function() 
{ 
return jQuery(this).get(0).selectedIndex; 
} 
//获得当前选中项的文本 
jQuery.fn.getSelectedText = function() 
{ 
if(this.size() == 0) 
{ 
return "下拉框中无选项"; 
} 
else 
{ 
var index = this.getSelectedIndex(); 
return jQuery(this).get(0).options[index].text; 
} 
} 
//获得当前选中项的值 
jQuery.fn.getSelectedValue = function() 
{ 
if(this.size() == 0) 
{ 
return "下拉框中无选中值"; 
} 
else 
{ 
return jQuery(this).val(); 
} 
} 
//设置select中值为value的项为选中 
jQuery.fn.setSelectedValue = function(value) 
{ 
jQuery(this).get(0).value = value; 
} 
//设置select中文本为text的第一项被选中 
jQuery.fn.setSelectedText = function(text) 
{ 
var isExist = false; 
var count = this.size(); 
for(var i=0;i<count;i++) 
{ 
if(jQuery(this).get(0).options[i].text == text) 
{ 
jQuery(this).get(0).options[i].selected = true; 
isExist = true; 
break; 
} 
} 
if(!isExist) 
{ 
alert("下拉框中不存在该项"); 
} 
} 
//设置选中指定索引项 
jQuery.fn.setSelectedIndex = function(index) 
{ 
var count = this.size(); 
if(index >= count || index < 0) 
{ 
alert("选中项索引超出范围"); 
} 
else 
{ 
jQuery(this).get(0).selectedIndex = index; 
} 
} 
//判断select项中是否存在值为value的项 
jQuery.fn.isExistItem = function(value) 
{ 
var isExist = false; 
var count = this.size(); 
for(var i=0;i<count;i++) 
{ 
if(jQuery(this).get(0).options[i].value == value) 
{ 
isExist = true; 
break; 
} 
} 
return isExist; 
} 
//向select中添加一项,显示内容为text,值为value,如果该项值已存在,则提示 
jQuery.fn.addOption = function(text,value) 
{ 
if(this.isExistItem(value)) 
{ 
alert("待添加项的值已存在"); 
} 
else 
{ 
jQuery(this).get(0).options.add(new Option(text,value)); 
} 
} 
//删除select中值为value的项,如果该项不存在,则提示 
jQuery.fn.removeItem = function(value) 
{ 
if(this.isExistItem(value)) 
{ 
var count = this.size(); 
for(var i=0;i<count;i++) 
{ 
if(jQuery(this).get(0).options[i].value == value) 
{ 
jQuery(this).get(0).remove(i); 
break; 
} 
} 
} 
else 
{ 
alert("待删除的项不存在!"); 
} 
} 
//删除select中指定索引的项 
jQuery.fn.removeIndex = function(index) 
{ 
var count = this.size(); 
if(index >= count || index < 0) 
{ 
alert("待删除项索引超出范围"); 
} 
else 
{ 
jQuery(this).get(0).remove(index); 
} 
} 
//删除select中选定的项 
jQuery.fn.removeSelected = function() 
{ 
var index = this.getSelectedIndex(); 
this.removeIndex(index); 
} 
//清除select中的所有项 
jQuery.fn.clearAll = function() 
{ 
jQuery(this).get(0).options.length = 0; 
}
Javascript 相关文章推荐
Google Suggest ;-) 基于js的动态下拉菜单
Oct 11 Javascript
google jQuery 引用文件,jQuery 引用地址集合(jquery 1.2.6至jquery1.5.2)
Apr 24 Javascript
jQuery中验证表单提交方式及序列化表单内容的实现
Jan 06 Javascript
纯css实现窗户玻璃雨滴逼真效果
Aug 23 Javascript
JavaScript定义全局对象的方法示例
Jan 12 Javascript
vue router demo详解
Oct 13 Javascript
Vue Element使用icon图标教程详解(第三方)
Feb 07 Javascript
vue兄弟组件传递数据的实例
Sep 06 Javascript
JavaScript函数的4种调用方法实例分析
Mar 05 Javascript
深入了解JavaScript 的 WebAssembly
Jun 15 Javascript
vue3.0搭配.net core实现文件上传组件
Oct 29 Javascript
解决iView Table组件宽度只变大不变小的问题
Nov 13 Javascript
JSON 编辑器实现代码
Dec 06 #Javascript
JS 控制非法字符的输入代码
Dec 04 #Javascript
对采用动态原型方式无法展示继承机制得思考
Dec 04 #Javascript
JavaScript 申明函数的三种方法 每个函数就是一个对象(一)
Dec 04 #Javascript
javascript 跳转代码集合
Dec 03 #Javascript
javascript KeyDown、KeyPress和KeyUp事件的区别与联系
Dec 03 #Javascript
javascript json 新手入门文档
Dec 03 #Javascript
You might like
PHP4实际应用经验篇(2)
2006/10/09 PHP
NO3第三帝国留言簿制作过程
2006/10/09 PHP
PHP 第二节 数据类型之字符串类型
2012/04/28 PHP
PHPer 需要了解的 5 个 Composer 小技巧
2014/08/18 PHP
PHP中curl_setopt函数用法实例分析
2015/04/16 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
2016/08/01 PHP
动态改变textbox的宽高的js
2006/10/26 Javascript
jquery 插件 web2.0分格的分页脚本,可用于ajax无刷新分页
2008/12/25 Javascript
js中有关IE版本检测
2012/01/04 Javascript
关于JS判断图片是否加载完成且获取图片宽度的方法
2013/04/09 Javascript
javascript+HTML5的Canvas实现Lab单车动画效果
2015/08/07 Javascript
jquery实现标题字体变换的滑动门菜单效果
2015/09/07 Javascript
如何用js实现鼠标向上滚动时浮动导航
2016/07/18 Javascript
微信小程序组件 contact-button(客服会话按钮)详解及实例代码
2017/01/10 Javascript
Vue 多层组件嵌套二种实现方式(测试实例)
2017/09/08 Javascript
代码详解Vuejs响应式原理
2017/12/20 Javascript
超详细动手搭建一个VuePress 站点及开启PWA与自动部署的方法
2019/01/27 Javascript
详解一些适用于Node.js的命名约定
2019/12/08 Javascript
小程序如何定位所在城市及发起周边搜索
2020/02/11 Javascript
[38:21]2014 DOTA2国际邀请赛中国区预选赛5.21 TongFu VS LGD-CDEC
2014/05/22 DOTA
python实现简单温度转换的方法
2015/03/13 Python
Django学习笔记之Class-Based-View
2017/02/15 Python
Python基于whois模块简单识别网站域名及所有者的方法
2018/04/23 Python
Python3+Pycharm+PyQt5环境搭建步骤图文详解
2019/05/29 Python
记一次django内存异常排查及解决方法
2020/08/07 Python
国外平面设计素材网站:The Hungry JPEG
2017/03/28 全球购物
毕业班联欢会主持词
2014/03/27 职场文书
合伙协议书
2014/04/23 职场文书
园林技术专业求职信
2014/07/28 职场文书
市场营销毕业求职信
2014/08/07 职场文书
交通工程专业推荐信
2014/09/06 职场文书
财政局党的群众路线教育实践活动整改方案
2014/09/21 职场文书
迁户口计划生育证明
2014/10/19 职场文书
跑吧孩子观后感
2015/06/10 职场文书
庆祝教师节主持词
2015/07/06 职场文书
初中毕业感言300字
2015/07/31 职场文书