zl程序教程

您现在的位置是:首页 >  其他

当前栏目

jQueryselect控制插件

控制插件 jqueryselect
2023-06-13 09:14:12 时间
和大家分享一下代码:
JavaScript代码
复制代码代码如下:

//得到select项的个数
jQuery.fn.size=function()
{
returnjQuery(this).get(0).options.length;
}
//获得选中项的索引
jQuery.fn.getSelectedIndex=function()
{
returnjQuery(this).get(0).selectedIndex;
}
//获得当前选中项的文本
jQuery.fn.getSelectedText=function()
{
if(this.size()==0)
{
return"下拉框中无选项";
}
else
{
varindex=this.getSelectedIndex();
returnjQuery(this).get(0).options[index].text;
}
}
//获得当前选中项的值
jQuery.fn.getSelectedValue=function()
{
if(this.size()==0)
{
return"下拉框中无选中值";
}
else
{
returnjQuery(this).val();
}
}
//设置select中值为value的项为选中
jQuery.fn.setSelectedValue=function(value)
{
jQuery(this).get(0).value=value;
}
//设置select中文本为text的第一项被选中
jQuery.fn.setSelectedText=function(text)
{
varisExist=false;
varcount=this.size();
for(vari=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)
{
varcount=this.size();
if(index>=count||index<0)
{
alert("选中项索引超出范围");
}
else
{
jQuery(this).get(0).selectedIndex=index;
}
}
//判断select项中是否存在值为value的项
jQuery.fn.isExistItem=function(value)
{
varisExist=false;
varcount=this.size();
for(vari=0;i<count;i++)
{
if(jQuery(this).get(0).options[i].value==value)
{
isExist=true;
break;
}
}
returnisExist;
}
//向select中添加一项,显示内容为text,值为value,如果该项值已存在,则提示
jQuery.fn.addOption=function(text,value)
{
if(this.isExistItem(value))
{
alert("待添加项的值已存在");
}
else
{
jQuery(this).get(0).options.add(newOption(text,value));
}
}
//删除select中值为value的项,如果该项不存在,则提示
jQuery.fn.removeItem=function(value)
{
if(this.isExistItem(value))
{
varcount=this.size();
for(vari=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)
{
varcount=this.size();
if(index>=count||index<0)
{
alert("待删除项索引超出范围");
}
else
{
jQuery(this).get(0).remove(index);
}
}
//删除select中选定的项
jQuery.fn.removeSelected=function()
{
varindex=this.getSelectedIndex();
this.removeIndex(index);
}
//清除select中的所有项
jQuery.fn.clearAll=function()
{
jQuery(this).get(0).options.length=0;
}

使用的时候先引入jquery.js文件,再引入jquery.liu.select.js文件,然后就可调用该插件的方法。比如,我要清除id为selEmail的下拉框中的所有项,那么我就可以这么操作:$("#selEmail").clearAll();
说明:该插件中的方法在ie7和firefox中验证通过,有错误和需要改进的地方还希望大家批评指正。