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/objects.txt",
10 { "mData": "browser" },
11 { "mData": "platform" },
12 { "mData": "version" },
16 var oSettings = oTable.fnSettings();
19 "Default sorting is single column",
22 return oSettings.aaSorting.length == 1 && typeof oSettings.aaSorting[0] == 'object';
27 "Default sorting is first column asc",
30 return oSettings.aaSorting[0].length == 3 && oSettings.aaSorting[0][0] == 0 &&
31 oSettings.aaSorting[0][1] == 'asc';
38 function () { return $('#example tbody td:eq(0)').html() == "Gecko"; }
43 "Custom sorting on single string column asc",
46 $('#example').dataTable( {
47 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
49 { "mData": "engine" },
50 { "mData": "browser" },
51 { "mData": "platform" },
52 { "mData": "version" },
55 "aaSorting": [['1','asc']]
58 function () { return $('#example tbody td:eq(1)').html() == "All others"; }
63 "Custom sorting on single string column desc",
66 $('#example').dataTable( {
67 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
69 { "mData": "engine" },
70 { "mData": "browser" },
71 { "mData": "platform" },
72 { "mData": "version" },
75 "aaSorting": [['1','desc']]
78 function () { return $('#example tbody td:eq(1)').html() == "Seamonkey 1.1"; }
83 "Custom sorting on single int column asc",
86 $('#example').dataTable( {
87 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
89 { "mData": "engine" },
90 { "mData": "browser" },
91 { "mData": "platform" },
92 { "mData": "version" },
95 "aaSorting": [['1','asc']]
98 function () { return $('#example tbody td:eq(3)').html() == "-"; }
103 "Custom sorting on single int column desc",
105 oSession.fnRestore();
106 $('#example').dataTable( {
107 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
109 { "mData": "engine" },
110 { "mData": "browser" },
111 { "mData": "platform" },
112 { "mData": "version" },
115 "aaSorting": [['1','desc']]
118 function () { return $('#example tbody td:eq(1)').html() == "Seamonkey 1.1"; }
123 "Multi-column sorting (2 column) - string asc / string asc",
125 oSession.fnRestore();
126 $('#example').dataTable( {
127 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
129 { "mData": "engine" },
130 { "mData": "browser" },
131 { "mData": "platform" },
132 { "mData": "version" },
135 "aaSorting": [['0','asc'], ['1','asc']]
138 function () { return $('#example tbody td:eq(1)').html() == "Camino 1.0"; }
142 "Multi-column sorting (2 column) - string asc / string desc",
144 oSession.fnRestore();
145 $('#example').dataTable( {
146 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
148 { "mData": "engine" },
149 { "mData": "browser" },
150 { "mData": "platform" },
151 { "mData": "version" },
154 "aaSorting": [['0','asc'], ['1','desc']]
157 function () { return $('#example tbody td:eq(1)').html() == "Seamonkey 1.1"; }
161 "Multi-column sorting (2 column) - string desc / string asc",
163 oSession.fnRestore();
164 $('#example').dataTable( {
165 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
167 { "mData": "engine" },
168 { "mData": "browser" },
169 { "mData": "platform" },
170 { "mData": "version" },
173 "aaSorting": [['0','desc'], ['1','asc']]
176 function () { return $('#example tbody td:eq(1)').html() == "iPod Touch / iPhone"; }
180 "Multi-column sorting (2 column) - string desc / string desc",
182 oSession.fnRestore();
183 $('#example').dataTable( {
184 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
186 { "mData": "engine" },
187 { "mData": "browser" },
188 { "mData": "platform" },
189 { "mData": "version" },
192 "aaSorting": [['0','desc'], ['1','desc']]
195 function () { return $('#example tbody td:eq(1)').html() == "Safari 3.0"; }
200 "Multi-column sorting (2 column) - string asc / int asc",
202 oSession.fnRestore();
203 $('#example').dataTable( {
204 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
206 { "mData": "engine" },
207 { "mData": "browser" },
208 { "mData": "platform" },
209 { "mData": "version" },
212 "aaSorting": [['0','asc'], ['3','asc']]
215 function () { return $('#example tbody td:eq(3)').html() == "1"; }
219 "Multi-column sorting (2 column) - string asc / int desc",
221 oSession.fnRestore();
222 $('#example').dataTable( {
223 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
225 { "mData": "engine" },
226 { "mData": "browser" },
227 { "mData": "platform" },
228 { "mData": "version" },
231 "aaSorting": [['0','asc'], ['3','desc']]
234 function () { return $('#example tbody td:eq(3)').html() == "1.9"; }
238 "Multi-column sorting (2 column) - string desc / int asc",
240 oSession.fnRestore();
241 $('#example').dataTable( {
242 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
244 { "mData": "engine" },
245 { "mData": "browser" },
246 { "mData": "platform" },
247 { "mData": "version" },
250 "aaSorting": [['0','desc'], ['3','asc']]
253 function () { return $('#example tbody td:eq(3)').html() == "125.5"; }
257 "Multi-column sorting (2 column) - string desc / int desc",
259 oSession.fnRestore();
260 $('#example').dataTable( {
261 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
263 { "mData": "engine" },
264 { "mData": "browser" },
265 { "mData": "platform" },
266 { "mData": "version" },
269 "aaSorting": [['0','desc'], ['3','desc']]
272 function () { return $('#example tbody td:eq(3)').html() == "522.1"; }
276 "Multi-column sorting (3 column) - string asc / int asc / string asc",
278 oSession.fnRestore();
279 $('#example').dataTable( {
280 "sAjaxSource": "../../../examples/ajax/sources/objects.txt",
282 { "mData": "engine" },
283 { "mData": "browser" },
284 { "mData": "platform" },
285 { "mData": "version" },
288 "aaSorting": [['0','asc'], ['3','asc'], ['1','asc']]
291 function () { return $('#example tbody tr:eq(7) td:eq(1)').html() == "Firefox 1.0"; }