2011-02-11 39 views
148

Tôi đang sử dụng plugin jquery DataTables. Từ tài liệu của họ:Có cách nào để tắt phân loại ban đầu cho DataTables jquery không?

Nếu sắp xếp được bật, khi đó, DataTables sẽ thực hiện loại chuyển tiếp đầu tiên khi khởi tạo. Bạn có thể xác định (các) cột nào được sắp xếp theo và hướng phân loại, với biến này. Mảng aaSorting nên chứa một mảng cho mỗi cột được sắp xếp ban đầu chứa chỉ mục của cột và một chuỗi định hướng ('asc' hoặc 'desc').

Có thể bật phân loại nhưng vô hiệu hóa loại chuyển đổi đầu tiên này khi khởi tạo không? Tôi hiện đang làm bên máy chủ sắp xếp ban đầu và cần chức năng phân loại nhưng không cần chức năng sắp xếp ban đầu này.

+0

Bạn đã viết sai chính tả DataTables với 'datables' vì vậy tôi đã nhầm lẫn khi nhìn vào điều này lúc đầu tiên – konyak

+0

@ChaseT. cảm ơn rất nhiều vì đã nói điều này với chúng tôi: P –

Trả lời

401

Vâng tôi thấy answer set "aaSorting" để một mảng trống:

$(document).ready(function() { 
    $('#example').dataTable({ 
     /* Disable initial sort */ 
     "aaSorting": [] 
    }); 
}) 

Đối với các phiên bản mới hơn của Datatables (> = 1,10) sử dụng order tùy chọn:

$(document).ready(function() { 
    $('#example').dataTable({ 
     /* No ordering applied by DataTables during initialisation */ 
     "order": [] 
    }); 
}) 
+43

Bạn không biết tôi vui khi thấy câu trả lời này như thế nào! Tôi chỉ muốn tôi có thể có được vài giờ cuối cùng của cuộc sống của tôi trở lại x/ – Jon

+2

Cảm ơn, bạn đã tiết kiệm cho tôi một tấn thời gian. – AntonK

+4

Câu trả lời này là một trợ giúp tuyệt vời nhưng đáng chú ý là sự nhầm lẫn tiềm năng gây ra. Nếu col 0 được sắp xếp trước asc và sắp xếp ban đầu này bị tắt thì khi người dùng nhấp vào đầu tiên của col 0, nó sẽ sắp xếp theo thứ tự asc. Để người dùng này trông giống như không có gì xảy ra vì họ sẽ mong đợi thứ tự desc. Nhấp chuột thứ hai sẽ sắp xếp desc. Để giải quyết vấn đề này, bạn có thể đặt 'asSorting: ['desc', 'asc']' trong 'aoColumnDefs' sao cho nhấp chuột đầu tiên là một loại desc. – tomfumb

4

Trong tùy chọn DataTable đặt này:

$(document).ready(function() { 
    $('#example').dataTable({ 
    "aaSorting": [[ 2, 'asc' ]], 
    //More options ... 

    }); 
}) 

Đây là giải pháp: "aaSorting": [[2, 'asc']],

2 nghĩa bảng sẽ được sắp xếp theo cột thứ ba,
asc thứ tự tăng dần.

+7

Câu hỏi đặt ra là cách "tắt phân loại ban đầu", không phải cách chỉ định thứ tự sắp xếp khác. Câu trả lời này phù hợp hơn với một câu hỏi khác. –

78

Theo tài liệu api mới nhất:

$(document).ready(function() { 
    $('#example').dataTable({ 
     "order": [] 
    }); 
}); 

More Info

+13

+1 API mới nhất .. –

+0

Câu trả lời hay ... –

2

Hãy thử điều này:

$(document).ready(function() { 
    $('#example').dataTable({ 
    "order": [] 
    }); 
}); 

này sẽ giải quyết vấn đề của bạn.

+4

Nó vô hiệu hóa vĩnh viễn. – Clayton

Các vấn đề liên quan