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

 更新时间:2009年11月12日 22:33:31   作者:  
Jquery其实本身可以操作select表单,但是由于比较反锁,没有.net 控件那样去操作方便,我在网上Google了一会,发现了一个不错的专门操作select的插件,很好,使用过了,感觉蛮不错的。
这里是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文件,然后你就可以使用这些方法了

相关文章

  • Jquery ui css framework

    Jquery ui css framework

    Jquery ui css framework是jquery ui中的一个样式框架,可以利用jquery Theme roller 来生成自己想要的css样式效果。我们可以利用jquery ui的一些框架来开发出基于jquery ui css framework效果的插件来。
    2010-06-06
  • jquery实现图片按比例缩放示例

    jquery实现图片按比例缩放示例

    这篇文章主要介绍了通过jquery实现图片按比例缩放,需要的朋友可以参考下
    2014-07-07
  • asp.net中oracle 存储过程(图文)

    asp.net中oracle 存储过程(图文)

    存储过程是在大型数据库系统中,一组为了完成特定功能的sql语句集,经过编译存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它,下面小编给大家介绍asp.net中oracle存储过程,需要的朋友可以参考下
    2015-08-08
  • greybox——不开新窗口看新的网页

    greybox——不开新窗口看新的网页

    这篇文章主要介绍了greybox——不开新窗口看新的网页
    2007-02-02
  • jQuery+ajax实现修改密码验证功能实例详解

    jQuery+ajax实现修改密码验证功能实例详解

    本文通过实例代码给大家介绍了jQuery+ajax实现修改密码验证功能,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧
    2017-07-07
  • Jquery实现的table最后一行添加样式的代码

    Jquery实现的table最后一行添加样式的代码

    有时间需要将表格的最后一行加上样式,方便阅读等需要,需要的朋友可以参考下。
    2010-05-05
  • jquery 无限级下拉菜单的简单实现代码

    jquery 无限级下拉菜单的简单实现代码

    本篇文章主要是对jquery 无限级下拉菜单的简单实现代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-02-02
  • Jquery 的outerHeight方法使用介绍

    Jquery 的outerHeight方法使用介绍

    获取第一个匹配元素外部高度默认包括补白和边框,在本文将为大家介绍下具体的实现代码,此方法对可见和隐藏元素均有效,感兴趣的朋友可以了解下
    2013-09-09
  • jQuery EasyUI提交表单验证

    jQuery EasyUI提交表单验证

    这篇文章主要介绍了jQuery EasyUI提交表单验证的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • jQuery使用Layer弹出层插件闪退问题

    jQuery使用Layer弹出层插件闪退问题

    这篇文章主要介绍了jQuery使用Layer弹出层插件遇到的闪退问题,需要的朋友可以参考下
    2016-12-12

最新评论