小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

按CTRL,SHIFT,ALT等鍵擴(kuò)展easyui的datagrid多選實(shí)現(xiàn)

 江江385 2018-05-24

//-------------------------------------------------------------------------------
// 當(dāng)然頁(yè)面文件中還需要引入的文件如下:
// easyui.css 和其它頁(yè)面用到的CSS文件
// jquery-1-8-3-min.js, easyui-lang-zh_CN.js, jquery-easyui-min.js, datagrid-detailview.js,  和其它頁(yè)面用到的JS文件
//-------------------------------------------------------------------------------
//     結(jié)合SHIFT,CTRL,ALT鍵實(shí)現(xiàn)單選或多選
//-------------------------------------------------------------------------------
var KEY = { SHIFT:16, CTRL:17, ALT:18, DOWN:40, RIGHT:39, UP:38, LEFT:37}; 
var selectIndexs = {firstSelectRowIndex:0, lastSelectRowIndex:0};
var inputFlags = {isShiftDown:false, isCtrlDown:false, isAltDown:false}

function keyPress(event){//響應(yīng)鍵盤(pán)按下事件
    var e = event || window.event; 
    var code = e.keyCode | e.which | e.charCode;     
    switch(code) { 
        case KEY.SHIFT: 
        inputFlags.isShiftDown = true;
        $('#dataListTable').datagrid('options').singleSelect = false;           
        break;
    case KEY.CTRL:
        inputFlags.isCtrlDown = true;
        $('#dataListTable').datagrid('options').singleSelect = false;           
        break;
    /*
    case KEY.ALT:   
        inputFlags.isAltDown = true;
        $('#dataListTable').datagrid('options').singleSelect = false;           
        break;
    */   
    default:       
    }
}

function keyRelease(event) { //響應(yīng)鍵盤(pán)按鍵放開(kāi)的事件
    var e = event || window.event; 
    var code = e.keyCode | e.which | e.charCode;     
    switch(code) { 
        case KEY.SHIFT:
        inputFlags.isShiftDown = false;
        selectIndexs.firstSelectRowIndex = 0;
        $('#dataListTable').datagrid('options').singleSelect = true;           
        break;
    case KEY.CTRL:
        inputFlags.isCtrlDown = false;
        selectIndexs.firstSelectRowIndex = 0;
        $('#dataListTable').datagrid('options').singleSelect = true;
        break;
    /*
    case KEY.ALT:   
        inputFlags.isAltDown = false;
        selectIndexs.firstSelectRowIndex = 0;
        $('#dataListTable').datagrid('options').singleSelect = true;           
        break;
    */
    default:       
    }
}


?
?2,HTML代碼,在頁(yè)面增加加載數(shù)據(jù)的位置和在body中增加響應(yīng)鍵盤(pán)事件:
?<body class="body01" onkeydown="javascript:keyPress(event);" onkeyup="javascript:keyRelease(event);">

<!-- 數(shù)據(jù)加載存放位置 -->
<div>
<table id="dataListTable"></table>
</div>
?
?3,在datagrid請(qǐng)求代碼的onClickRow事件中增加操作代碼,onClickRow單擊事件如下:


onClickRow:function(index,row){   
    //-------------for TEST 結(jié)合SHIFT,CTRL,ALT鍵實(shí)現(xiàn)單選或多選----------------   
    if(index != selectIndexs.firstSelectRowIndex && !inputFlags.isShiftDown ){ 
        selectIndexs.firstSelectRowIndex = index; //alert('firstSelectRowIndex, sfhit = ' + index);
    }           
    if(inputFlags.isShiftDown ) {
        $('#dataListTable').datagrid('clearSelections');               
        selectIndexs.lastSelectRowIndex = index;
        var tempIndex = 0;
        if(selectIndexs.firstSelectRowIndex > selectIndexs.lastSelectRowIndex ){
            tempIndex = selectIndexs.firstSelectRowIndex;
            selectIndexs.firstSelectRowIndex = selectIndexs.lastSelectRowIndex;
            selectIndexs.lastSelectRowIndex = tempIndex;
        }
        for(var i = selectIndexs.firstSelectRowIndex ; i <= selectIndexs.lastSelectRowIndex ; i++){
            $('#dataListTable').datagrid('selectRow', i);   
        }   
    }           
    //-------------for TEST 結(jié)合SHIFT,CTRL,ALT鍵實(shí)現(xiàn)單選或多選----------------
}
?
?
?4,參考的datagrid請(qǐng)求代碼:
?
?;
$(function(){   
    $('#dataListTable').datagrid({
        url:'xpath/jsonData01.json',
        height:(screen.height == 900 ? 660 : 950),
        nowrap:true,
        autoRowHeight:false,
        striped:true,
        singleSelect:true,
        collapsible:false,
        //checkOnSelect:true,
        //selectOnCheck:true,   
        remoteSort:false,
        frozenColumns:[[
            {field:'ck',checkbox:true},
            //{title:'cel02',field:'code',width:80,sortable:true}
            ]],
        columns:[[
            {field:'cel01',title:'列名01',width:100,sortable:true},
            {field:'cel02',title:'列名02',width:100,sortable:true},
            {field:'cel03',title:'列名03',width:150,sortable:true},
            {field:'cel04',title:'列名04',width:200,sortable:true},
            {field:'cel05',title:'列名05',width:100,sortable:true},
            {field:'cel06',title:'緊急度',width:100,sortable:true,
                formatter:function(value,row,index){
                    if("緊急" == $.trim(value)){
                        return '<span class="urgent01">' + value + '</span>';
                    }else{
                        return '<span class="normal01">' + value + '</span>';
                    }
                }           
            },
            {field:'cel07',title:'列名07',width:300,sortable:true},
            {field:'cel08',title:'開(kāi)始時(shí)間',width:200,sortable:true,
                formatter:function(value,row,index){ return formatterDate(value);}
            },
            {field:'cel09',title:'結(jié)束時(shí)間',width:200,sortable:true,
                formatter:function(value,row,index){ return formatterDate(value);}
            },
            {field:'cel10',title:'列名10',width:100,sortable:true}
        ]],       
        pagination:true,
        pageNumber:1,
        pageList:[10,20,30,40,50],
        view:detailview,
        detailFormatter:function(index,row){
            var conStyle = ' style="border:0px solid red; padding:10px 10px; background-color:#a4bac1;"';
            var dataCon = '<div id="ddv-' + index + '"' + conStyle + '></div>';
            return dataCon;
            },
        onExpandRow:function(index,row){ //展開(kāi)事件
            $('#ddv-' + index).panel({
                cache:false, 
                border:false,
                href:'detailPage.htm', //展開(kāi)行的子頁(yè)面,如果是完整頁(yè)面也僅取body元素之內(nèi)的內(nèi)容
                onLoad:function(){        
                    //調(diào)整展開(kāi)行高度
                    $('#dataListTable').datagrid('fixDetailRowHeight',index);
                }   
            });   
        },
        onSelect:function(index,data){
            //do nothing           
        },
        rowStyler:function(index,row){
            /*
            if( index < 4 && (index % 2) == 0){
                return 'background:#CCFF99';   
            }
            */
        },
        onClickRow:function(index,row){    //單擊行事件
            //---------for TEST 結(jié)合SHIFT,CTRL,ALT鍵實(shí)現(xiàn)單選或多選------------
            if(index != selectIndexs.firstSelectRowIndex && !inputFlags.isShiftDown ){ 
                selectIndexs.firstSelectRowIndex = index; //alert('firstSelectRowIndex, sfhit = ' + index);
            }           
            if(inputFlags.isShiftDown ) {
                $('#dataListTable').datagrid('clearSelections');
                selectIndexs.lastSelectRowIndex = index;
                var tempIndex = 0;
                if(selectIndexs.firstSelectRowIndex > selectIndexs.lastSelectRowIndex ){
                    tempIndex = selectIndexs.firstSelectRowIndex;
                    selectIndexs.firstSelectRowIndex = selectIndexs.lastSelectRowIndex;
                    selectIndexs.lastSelectRowIndex = tempIndex;
                }
                for(var i = selectIndexs.firstSelectRowIndex ; i <= selectIndexs.lastSelectRowIndex ; i++){
                    $('#dataListTable').datagrid('selectRow', i);   
                }   
            }           
            //---------for TEST 結(jié)合SHIFT,CTRL,ALT鍵實(shí)現(xiàn)單選或多選------------
        },
        onLoadSuccess:function(data){   
            $('#dataListTable').datagrid('clearSelections');
        },
        onLoadError:function(){   
            //alert('error....');
        }
    });    
   
    //other variables or event initialize here
    //-------------------------------------------
    var p = $('#dataListTable').datagrid('getPager'); //個(gè)性化設(shè)置分頁(yè)對(duì)象
    $(p).pagination({
        pageNumber:1,
        pageSize:10,
        pageList:[10,20,30,40],
        beforePageText:'第',
        afterPageText:' 頁(yè),共{pages}頁(yè)',
        displayMsg:'當(dāng)前{from} - {to}條, 共{total}條'
    });
?$('#dataListTable').datagrid('enableCellSelecting');
    //-------------------------------------------
});
?
?

function formatterDate(objDate){ //格式化日期函數(shù)
     var strDate = objDate.year;
    strDate += '-' + objDate.month;   
    strDate += '-' + objDate.date;
    strDate += ' ' + objDate.hours;
    strDate += ':' + objDate.minutes;
    strDate += ':' + objDate.seconds;
    return strDate;
}

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多