1 // DATA_TEMPLATE: empty_table
2 oTest.fnStart( "aaSorting" );
4 $(document).ready( function () {
5 /* Check the default */
6 var oTable = $('#example').dataTable( {
7 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt"
9 var oSettings = oTable.fnSettings();
12 "Default sorting is single column",
15 return oSettings.aaSorting.length == 1 && typeof oSettings.aaSorting[0] == 'object';
20 "Default sorting is first column asc",
23 return oSettings.aaSorting[0].length == 3 && oSettings.aaSorting[0][0] == 0 &&
24 oSettings.aaSorting[0][1] == 'asc';
31 function () { return $('#example tbody td:eq(0)').html() == "Gecko"; }
36 "Custom sorting on single string column asc",
39 $('#example').dataTable( {
40 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
41 "aaSorting": [['1','asc']]
44 function () { return $('#example tbody td:eq(1)').html() == "All others"; }
49 "Custom sorting on single string column desc",
52 $('#example').dataTable( {
53 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
54 "aaSorting": [['1','desc']]
57 function () { return $('#example tbody td:eq(1)').html() == "Seamonkey 1.1"; }
62 "Custom sorting on single int column asc",
65 $('#example').dataTable( {
66 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
67 "aaSorting": [['1','asc']]
70 function () { return $('#example tbody td:eq(3)').html() == "-"; }
75 "Custom sorting on single int column desc",
78 $('#example').dataTable( {
79 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
80 "aaSorting": [['1','desc']]
83 function () { return $('#example tbody td:eq(1)').html() == "Seamonkey 1.1"; }
88 "Multi-column sorting (2 column) - string asc / string asc",
91 $('#example').dataTable( {
92 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
93 "aaSorting": [['0','asc'], ['1','asc']]
96 function () { return $('#example tbody td:eq(1)').html() == "Camino 1.0"; }
100 "Multi-column sorting (2 column) - string asc / string desc",
102 oSession.fnRestore();
103 $('#example').dataTable( {
104 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
105 "aaSorting": [['0','asc'], ['1','desc']]
108 function () { return $('#example tbody td:eq(1)').html() == "Seamonkey 1.1"; }
112 "Multi-column sorting (2 column) - string desc / string asc",
114 oSession.fnRestore();
115 $('#example').dataTable( {
116 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
117 "aaSorting": [['0','desc'], ['1','asc']]
120 function () { return $('#example tbody td:eq(1)').html() == "iPod Touch / iPhone"; }
124 "Multi-column sorting (2 column) - string desc / string desc",
126 oSession.fnRestore();
127 $('#example').dataTable( {
128 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
129 "aaSorting": [['0','desc'], ['1','desc']]
132 function () { return $('#example tbody td:eq(1)').html() == "Safari 3.0"; }
137 "Multi-column sorting (2 column) - string asc / int asc",
139 oSession.fnRestore();
140 $('#example').dataTable( {
141 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
142 "aaSorting": [['0','asc'], ['3','asc']]
145 function () { return $('#example tbody td:eq(3)').html() == "1"; }
149 "Multi-column sorting (2 column) - string asc / int desc",
151 oSession.fnRestore();
152 $('#example').dataTable( {
153 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
154 "aaSorting": [['0','asc'], ['3','desc']]
157 function () { return $('#example tbody td:eq(3)').html() == "1.9"; }
161 "Multi-column sorting (2 column) - string desc / int asc",
163 oSession.fnRestore();
164 $('#example').dataTable( {
165 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
166 "aaSorting": [['0','desc'], ['3','asc']]
169 function () { return $('#example tbody td:eq(3)').html() == "125.5"; }
173 "Multi-column sorting (2 column) - string desc / int desc",
175 oSession.fnRestore();
176 $('#example').dataTable( {
177 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
178 "aaSorting": [['0','desc'], ['3','desc']]
181 function () { return $('#example tbody td:eq(3)').html() == "522.1"; }
185 "Multi-column sorting (3 column) - string asc / int asc / string asc",
187 oSession.fnRestore();
188 $('#example').dataTable( {
189 "sAjaxSource": "../../../examples/ajax/sources/arrays.txt",
190 "aaSorting": [['0','asc'], ['3','asc'], ['1','asc']]
193 function () { return $('#example tbody tr:eq(7) td:eq(1)').html() == "Firefox 1.0"; }