Như những người khác đã nói trước đó
không có hỗ trợ trong mã sắp xếp bảng được tích hợp để cho phép sắp xếp nhiều cột, cũng như không có khả năng xác định mặc định giảm dần thay vì tăng dần cột
Nhưng bạn nên có một cái nhìn về cách tiếp cận sau đây với Deskorter.
Dành cho D7:
1. Tải xuống và kích hoạt Mô-đun Tableorter
2.Download và chiết xuất TableSorter jQuery Plugin vàosites/all/libraries/tablesorter
3.Thêm một lớp CSS tablesorter
và một id duy nhất vào các bảng Lượt xem của bạn trong template.php
/**
* Preprocess variables for Views tables.
*/
function YOUR_THEME_preprocess_views_view_table(&$vars) {
$view = $vars['view'];
$vars['classes_array'][] = 'tablesorter';
$vars['attributes_array']['id'] = $view->name . '-' . $view->current_display;
}
4. Xóa bộ nhớ cache một vài lần. Bây giờ Deskorter đã bắt đầu hoạt động. Bạn sẽ thấy nó khi kiểu dáng thay đổi.
5.Đối với loại thứ cấp, bạn cần thêm một JavaScript tùy chỉnh nhỏ. Trong template.php:
/**
* Override or insert variables for the page templates.
*/
function YOUR_THEME_preprocess_page(&$vars) {
// you might define some conditions around here
drupal_add_js(drupal_get_path('theme', 'YOUR_THEME') . '/scripts/custom_tablesort.js');
}
6.Trong kịch bản đó, hãy viết như sau để báo cho Tableorter sắp xếp sáu coll coll đầu tiên của các bảng nhất định theo thứ tự bảng chữ cái tăng dần. Thay vào đó, hãy báo cho Tableorter chỉ sắp xếp cột thứ hai và thứ ba theo thứ tự tăng dần sortList: [[1,0], [2,0]]
.
(function ($) {
Drupal.behaviors.tableSorting = {
attach: function (context, settings) {
$("#your_view_name-display_name").tablesorter({
sortList: [[0,0],[1,0],[2,0],[3,0],[4,0],[5,0]]
});
}
}
}) (jQuery);
Nếu bạn muốn để cho bảng xếp hạng thứ cấp sắp xếp tất cả các bảng của mình, bạn không cần xác định id CSS khi tiền xử lý và chỉ cần nói với Tableorter: $("table").tablesorter({ sortList: [[0,0],[1,0],[2,0],[3,0],[4,0],[5,0]] });
Sau khi thử nghiệm một chút, tôi nói rằng bạn bỏ bất kỳ tùy chọn nào của Bộ sắp xếp tùy chỉnh (kết thúc với bước 4) và chỉ cần giải thích cho người dùng của bạn rằng trong shiftkhi nhấn giữ khi nhấp vào nhiều tiêu đề, sắp xếp thứ cấp hoạt động trên mỗi cột mong muốn.