JQuery操作Selected的实例代码

发布时间:2020-09-12编辑:脚本学堂
分享下jquery操作selected的一些实例代码,用来学习jquery selected元素的操作还是不错的,有需要的朋友参考下。

jquery操作Selected:
 

复制代码 代码示例:
/*文件名:jquery.liu.select.js
功能说明:本js文件为jquery类库的一个插件,主要实现对select的操作.
*/
//得到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; 
}