Thứ Hai, 24 tháng 6, 2013

Codeigniter jTable lỗi phân trang

Lỗi phân trang của jTable khi làm việc với Codeigniter do lỗi session: Disallow Key Character

Giải pháp:
Sửa hàm _generateCookieKeyPrefix của jTable, sử dụng dấu _ thay cho dấu #

_generateCookieKeyPrefix: function () {

            var simpleHash = function (value) {
                var hash = 0;
                if (value.length == 0) {
                    return hash;
                }

                for (var i = 0; i < value.length; i++) {
                    var ch = value.charCodeAt(i);
                    hash = ((hash << 5) - hash) + ch;
                    hash = hash & hash;
                }

                return hash;
            };

            var strToHash = '';
            if (this.options.tableId) {
                strToHash = strToHash + this.options.tableId + '_';// Sửa chỗ này
            }

            strToHash = strToHash + this._columnList.join('$') + '#c' + this._$table.find('thead th').length;
            return 'jtable_' + simpleHash(strToHash);// Sửa chỗ này
        }

Chỉ cần thay dấu # thành dấu _ ở 2 dòng code trên.
Nếu sử dụng bản mini của jTable thì sửa trong bản mini nhé.

Chúc vui,
Namleasia

Không có nhận xét nào:

Đăng nhận xét

Thời gian và chiếc lá

Thời gian trôi nhanh Đời người mong manh Như lá trên cành Rồi cũng hết xanh Đã rõ tử sanh Chẳng chuộng lợi danh Phong ý trong...