Jquery操作Select 简单方便 一个js插件搞定


Posted in Javascript onNovember 12, 2009

这里是js的代码:

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; 
}

使用很简单,先引入主要的Jquery.js
然后再引入这个js文件,然后你就可以使用这些方法了
Javascript 相关文章推荐
基于JQuery.timer插件实现一个计时器
Apr 25 Javascript
script标签的 charset 属性使用说明
Dec 04 Javascript
提交表单时执行func方法实现代码
Mar 17 Javascript
laytpl 精致巧妙的JavaScript模板引擎
Aug 29 Javascript
js的for in循环和java里foreach循环的区别分析
Jan 28 Javascript
JavaScript中DOM详解
Apr 13 Javascript
jquery插件ajaxupload实现文件上传操作
Dec 09 Javascript
JQuery实现Ajax加载图片的方法
Dec 24 Javascript
AngularJS实现表格的增删改查(仅限前端)
Jul 04 Javascript
layer实现登录弹框,登录成功后关闭弹框并调用父窗口的例子
Sep 11 Javascript
基于js判断浏览器是否支持webGL
Apr 18 Javascript
Vue elementui字体图标显示问题解决方案
Aug 18 Javascript
jquery控制listbox中项的移动并排序
Nov 12 #Javascript
Jquery 获取表单text,areatext,radio,checkbox,select值的代码
Nov 12 #Javascript
两个select之间option的互相添加操作(jquery实现)
Nov 12 #Javascript
XHTML下,JS浮动代码失效的问题
Nov 12 #Javascript
把html页面的部分内容保存成新的html文件的jquery代码
Nov 12 #Javascript
Javascript 定时器调用传递参数的方法
Nov 12 #Javascript
Ext.FormPanel 提交和 Ext.Ajax.request 异步提交函数的区别
Nov 12 #Javascript
You might like
英雄试炼之肉山谷—引领RPG新潮流
2020/04/20 DOTA
php array_map array_multisort 高效处理多维数组排序
2009/06/11 PHP
一个简单的网页密码登陆php代码
2012/07/17 PHP
php给每个段落添加空格的方法
2015/03/20 PHP
php简单读取.vcf格式文件的方法示例
2017/09/02 PHP
Ajax+PHP实现的删除数据功能示例
2019/02/12 PHP
jquery插件制作简单示例说明
2012/02/03 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
php常见的页面跳转方法汇总
2015/04/15 Javascript
举例详解Python中smtplib模块处理电子邮件的使用
2015/06/24 Javascript
javascript实现连续赋值
2015/08/10 Javascript
js实现table添加行tr、删除行tr、清空行tr的简单实例
2016/10/15 Javascript
JQ图片文件上传之前预览功能的简单实例(分享)
2017/11/12 Javascript
Angular2之二级路由详解
2018/08/31 Javascript
微信小程序中转义字符的处理方法
2019/03/28 Javascript
Angular+Ionic使用queryParams实现跳转页传值的方法
2020/09/05 Javascript
Python ZipFile模块详解
2013/11/01 Python
跟老齐学Python之折腾一下目录
2014/10/24 Python
python中实现精确的浮点数运算详解
2017/11/02 Python
python3 判断列表是一个空列表的方法
2018/05/04 Python
python将字母转化为数字实例方法
2019/10/04 Python
python 串行执行和并行执行实例
2020/04/30 Python
PyQt5结合matplotlib绘图的实现示例
2020/09/15 Python
Jupyter Notebook安装及使用方法解析
2020/11/12 Python
PyCharm Ctrl+Shift+F 失灵的简单有效解决操作
2021/01/15 Python
基于HTML5 Canvas:字符串,路径,背景,图片的详解
2013/05/09 HTML / CSS
linux面试题参考答案(11)
2016/11/26 面试题
医学生自我鉴定范文
2013/11/08 职场文书
签约仪式策划方案
2014/06/02 职场文书
祖国在我心中演讲稿450字
2014/09/05 职场文书
大学生职业生涯规划大赛作品(精品)
2014/09/17 职场文书
夫妻婚内购房协议书
2014/10/05 职场文书
学校运动会简讯
2015/07/20 职场文书
幼儿园心得体会范文
2016/01/21 职场文书
python自动化八大定位元素讲解
2021/07/09 Python
利用 Python 的 Pandas和 NumPy 库来清理数据
2022/04/13 Python