easyui datagrid 分頁保持checkbox選中狀態


剛開始我一直迷迷糊糊的寫了很久,發現其實很簡單 先給大家看看我的笨辦法

var checkedItems = [];
 function ischeckItem() {
        for (var i = 0; i < checkedItems.length; i++) {
            $('#maingrid').datagrid('selectRecord', checkedItems[i]); //根據id選中行 
        }
    }

 function findCheckedItem(ID) {
        for (var i = 0; i < checkedItems.length; i++) {
            if (checkedItems[i] == ID) return i;
        }
        return -1;
    }

 function addcheckItem() {
        var row = $('#maingrid').datagrid('getChecked');
        for (var i = 0; i < row.length; i++) {
            if (findCheckedItem(row[i].id) == -1) {
                checkedItems.push(row[i].id);
            }
        }
    }
    function removeAllItem(rows) {

        for (var i = 0; i < rows.length; i++) {
            var k = findCheckedItem(rows[i].id);
            if (k != -1) {
                checkedItems.splice(i, 1);
            }
        }
    }
    function removeSingleItem(rowIndex, rowData) {
        var k = findCheckedItem(rowData.id);
        if (k != -1) {
            checkedItems.splice(k, 1);
        }
    }

 后來發現有個idField的屬性,這個屬性為了什么作用呢?我查閱了easyui的源代碼發現這個就是來區分狀態的

在easyui datagrid設置

idField:"主鍵字段名"
你會發現選中狀態就會保持得住,不用做任何編碼。

如果這篇文章對您有幫助,您可以打賞我

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM