• Jquery操作Select內的項目 總結


    //=================================
        //操作Select內的項目(操作類型,對象id,值)

    //如果要轉載本文請注明出處,免的出現版權紛爭,我不喜歡看到那種轉載了我的作品卻不注明出處的人 Seven{See7di#Gmail.com}

        $.sel = function(Typ,Id,Val){
            switch (Typ.toLowerCase()){
            case "len":            //得到select项的元素个数[Typ,Id]:$.sel('len','id')
                return $("#"+Id).get(0).options.length;
                break;
            case "index":        //获得选中项的索引[Typ,Id]:$.sel('index','id')
                return $("#"+Id).get(0).selectedIndex;
                break;
            case "val":            //取得當前value值[Typ,Id]:$.sel('val','id')
                return $("#"+Id).val();
                break;
            case "isval":        //判斷是否存在某value值[Typ,Id,Val]:$.sel('isval','id','value')
                var len = $("#"+Id).get(0).options.length;
                for(var i=0;i<len;i++){if($("#"+Id).get(0).options[i].value == Val){return true;break;}}
                return false;break;
            case "indexval":    //取得索引值上的value值[Typ,Id,Val]:$.sel('isval','id','value')
                return $("#"+Id+" option:eq("+Val+")").val();
                break;
            case "allval":        //取得所有的value值[Typ,Id,Val]:$.sel('allval','id','|')
                var len = $("#"+Id).get(0).options.length;_val='';
                for(var i=0;i<len;i++){_val+=Val+$("#"+Id).get(0).options[i].value;}
                return _val+Val;
                break;
            case "txt":            //取得當前text值[Typ,Id]:$.sel('txt','id')
                return $("#"+Id).get(0).options[$("#"+Id).get(0).selectedIndex].text;
                break;
            case "istxt":        //判斷是否存在某text值[Typ,Id,Val]:$.sel('isval','id','value')
                var len = $("#"+Id).get(0).options.length;
                for(var i=0;i<len;i++){if($("#"+Id).get(0).options[i].text == Val){return true;break;}}
                return false;break;
            case "alltxt":        //取得所有的value值[Typ,Id,Val]:$.sel('alltxt','id','|')
                var len = $("#"+Id).get(0).options.length;_val='';
                for(var i=0;i<len;i++){_val+=Val+$("#"+Id).get(0).options[i].text;}
                return _val+Val;
                break;
            case "add":            //添加项目[Typ,Id,Val]:$.sel('add','id','<option value=33>请选择</option>')
                $("#"+Id).prepend(Val);
                break;
            case "insert":        //在指定位置插入项目[Typ,Id,Val]:$.sel('insert','id','<option value=33>请选择</option>')
                $("#"+Id+" option:selected").before(Val);$("#"+Id).get(0).selectedIndex = ($("#"+Id).get(0).selectedIndex-1);
                break;
            case "del_ins":        //將id前半段的內容移動到id後半段的選中位置之前(被操作項目必須有默認選擇項)[Typ,Id]:$.sel('del_ins','id1|id2')
                var Arr=new Array();Arr=Id.split("|");
                if(!$("#"+Arr[0]+" option:selected").val() || !$("#"+Arr[0]+" option:selected").text()){return;}
                Val="<option value='"+$("#"+Arr[0]+" option:selected").val()+"'>"+$("#"+Arr[0]+" option:selected").text()+"</option>";
                oi=$("#"+Arr[0]).get(0).selectedIndex;
                $("#"+Arr[0]+" option:selected").remove();
                $("#"+Arr[0]).get(0).selectedIndex = (oi-1<0)?0:(oi-1);
                if($("#"+Arr[1]+"").get(0).options.length<1 || $("#"+Arr[1]).get(0).selectedIndex<0){
                    $("#"+Arr[1]+"").prepend(Val);
                    $("#"+Arr[1]).get(0).selectedIndex = 0;
                }else{
                    $("#"+Arr[1]+" option:selected").before(Val);
                    $("#"+Arr[1]).get(0).selectedIndex = ($("#"+Arr[1]).get(0).selectedIndex-1);
                }
                break;
            case "selindex":    //預設某項為選中(參照索引值)[Typ,Id,Val]:$.sel('selindex','id','index')
                $("#"+Id).get(0).selectedIndex = Val;
                break;
            case "selval":        //預設某項為選中(參照Value的值)[Typ,Id,Val]:$.sel('selval','id','value')
                $("#"+Id).get(0).value=Val;
                break;
            case "seltxt":        //預設某項為選中(參照Text的值)[Typ,Id,Val]:$.sel('seltxt','id','text')
                var len = $("#"+Id).get(0).options.length;
                for(var i=0;i<len;i++){if($("#"+Id).get(0).options[i].text == Val){$("#"+Id).get(0).options[i].selected = true;break;}}
                break;
            case "selall":        //選擇全部[Typ,Id]:$.sel('selall','id')
                var len = $("#"+Id).get(0).options.length;
                for(var i=0;i<len;i++){$("#"+Id).get(0).options[i].selected = true;}
                break;
            case "delindex":    //刪除單個(參照索引值)[Typ,Id,Val]:$.sel('delindex','id','index')
                $("#"+Id).get(0).remove(Val);
                break;
            case "delval":        //刪除單個(參照Value的值)[Typ,Id,Val]:$.sel('delval','id','value')
                $("#"+Id+" option[value='"+Val+"']").remove();
                break;
            case "deltxt":        //刪除單個(參照Text的值)[Typ,Id,Val]:$.sel('deltxt','id','text')
                var len = $("#"+Id).get(0).options.length;
                for(var i=0;i<len;i++){if($("#"+Id).get(0).options[i].text == Val){$("#"+Id).get(0).remove(i);break;}}
                break;
            case "delselected":    //刪除單個(被選中的對象)[Typ,Id]:$.sel('delselected','id')
                $("#"+Id+" option:selected").remove();
                break;
            case "delall":        //刪除全部
                $("#"+Id).get(0).options.length = 0 ;
                break;
            }
        }

  • 相关阅读:
    devexpress LayoutControl控件里面的内边距的消除
    NPOI 单元格高度和宽度的值设置解释
    NPOI 设置合并后的单元格的边框的解决方法
    ajax中参数traditional的作用
    kendo ui 遇到问题 Invalid or unexpected token的原因和解决方法
    kendo ui grid重置功能,重置所有数据
    mysql 8.*版本部署上以后用navcat能连上,但是系统连不上
    mysql 5.7的my.ini的位置在隐藏文件夹“ProgramData”下面
    获取kendo treeView上的选中项
    mysql按30分钟进行分组
  • 原文地址:https://www.cnblogs.com/see7di/p/2239809.html
Copyright © 2020-2023  润新知