Free cookie consent management tool by TermsFeed Policy Generator

source: branches/WebApplication/MVC2/HeuristicLabWeb.PluginHost/HLWebPluginHost/Content/jQuery/jQueryPlugins/DataTables-1.7.6/examples/api/select_row.html @ 6286

Last change on this file since 6286 was 6286, checked in by dkahn, 13 years ago

#1198 Added jQuery plus plugins

File size: 17.8 KB
RevLine 
[6286]1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2<html>
3  <head>
4    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
5    <link rel="shortcut icon" type="image/ico" href="http://www.datatables.net/media/images/favicon.ico" />
6   
7    <title>DataTables example</title>
8    <style type="text/css" title="currentStyle">
9      @import "../../media/css/demo_page.css";
10      @import "../../media/css/demo_table.css";
11    </style>
12    <script type="text/javascript" language="javascript" src="../../media/js/jquery.js"></script>
13    <script type="text/javascript" language="javascript" src="../../media/js/jquery.dataTables.js"></script>
14    <script type="text/javascript" charset="utf-8">
15      $(document).ready(function() {
16        /* Add a click handler to the rows - this could be used as a callback */
17        $('#example tr').click( function() {
18          if ( $(this).hasClass('row_selected') )
19            $(this).removeClass('row_selected');
20          else
21            $(this).addClass('row_selected');
22        } );
23       
24        /* Init the table */
25        var oTable = $('#example').dataTable( );
26      } );
27     
28      /*
29       * I don't actually use this here, but it is provided as it might be useful and demonstrates
30       * getting the TR nodes from DataTables
31       */
32      function fnGetSelected( oTableLocal )
33      {
34        var aReturn = new Array();
35        var aTrs = oTableLocal.fnGetNodes();
36       
37        for ( var i=0 ; i<aTrs.length ; i++ )
38        {
39          if ( $(aTrs[i]).hasClass('row_selected') )
40          {
41            aReturn.push( aTrs[i] );
42          }
43        }
44        return aReturn;
45      }
46    </script>
47  </head>
48  <body id="dt_example">
49    <div id="container">
50      <div class="full_width big">
51        <i>DataTables</i> row select example
52      </div>
53     
54      <h1>Preamble</h1>
55      <p>It can be quite useful at times to provide the user with the option to select rows in a DataTable. This can be done using the API functions that <i>DataTables</i> provides. The example below uses the <b>fnRowCallback()</b> function to add a 'click' listener to each row, which will highlight the required row when selected. The indexes of the selected rows are then provided through the custom function <b>fnGetSelected()</b> for later processing.</p>
56     
57      <h1>Live example</h1>
58      <div id="demo">
59<table cellpadding="0" cellspacing="0" border="0" class="display" id="example">
60  <thead>
61    <tr>
62      <th>Rendering engine</th>
63      <th>Browser</th>
64      <th>Platform(s)</th>
65      <th>Engine version</th>
66      <th>CSS grade</th>
67    </tr>
68  </thead>
69  <tbody>
70    <tr class="gradeX">
71      <td>Trident</td>
72      <td>Internet
73         Explorer 4.0</td>
74      <td>Win 95+</td>
75      <td class="center">4</td>
76      <td class="center">X</td>
77    </tr>
78    <tr class="gradeC">
79      <td>Trident</td>
80      <td>Internet
81         Explorer 5.0</td>
82      <td>Win 95+</td>
83      <td class="center">5</td>
84      <td class="center">C</td>
85    </tr>
86    <tr class="gradeA">
87      <td>Trident</td>
88      <td>Internet
89         Explorer 5.5</td>
90      <td>Win 95+</td>
91      <td class="center">5.5</td>
92      <td class="center">A</td>
93    </tr>
94    <tr class="gradeA">
95      <td>Trident</td>
96      <td>Internet
97         Explorer 6</td>
98      <td>Win 98+</td>
99      <td class="center">6</td>
100      <td class="center">A</td>
101    </tr>
102    <tr class="gradeA">
103      <td>Trident</td>
104      <td>Internet Explorer 7</td>
105      <td>Win XP SP2+</td>
106      <td class="center">7</td>
107      <td class="center">A</td>
108    </tr>
109    <tr class="gradeA">
110      <td>Trident</td>
111      <td>AOL browser (AOL desktop)</td>
112      <td>Win XP</td>
113      <td class="center">6</td>
114      <td class="center">A</td>
115    </tr>
116    <tr class="gradeA">
117      <td>Gecko</td>
118      <td>Firefox 1.0</td>
119      <td>Win 98+ / OSX.2+</td>
120      <td class="center">1.7</td>
121      <td class="center">A</td>
122    </tr>
123    <tr class="gradeA">
124      <td>Gecko</td>
125      <td>Firefox 1.5</td>
126      <td>Win 98+ / OSX.2+</td>
127      <td class="center">1.8</td>
128      <td class="center">A</td>
129    </tr>
130    <tr class="gradeA">
131      <td>Gecko</td>
132      <td>Firefox 2.0</td>
133      <td>Win 98+ / OSX.2+</td>
134      <td class="center">1.8</td>
135      <td class="center">A</td>
136    </tr>
137    <tr class="gradeA">
138      <td>Gecko</td>
139      <td>Firefox 3.0</td>
140      <td>Win 2k+ / OSX.3+</td>
141      <td class="center">1.9</td>
142      <td class="center">A</td>
143    </tr>
144    <tr class="gradeA">
145      <td>Gecko</td>
146      <td>Camino 1.0</td>
147      <td>OSX.2+</td>
148      <td class="center">1.8</td>
149      <td class="center">A</td>
150    </tr>
151    <tr class="gradeA">
152      <td>Gecko</td>
153      <td>Camino 1.5</td>
154      <td>OSX.3+</td>
155      <td class="center">1.8</td>
156      <td class="center">A</td>
157    </tr>
158    <tr class="gradeA">
159      <td>Gecko</td>
160      <td>Netscape 7.2</td>
161      <td>Win 95+ / Mac OS 8.6-9.2</td>
162      <td class="center">1.7</td>
163      <td class="center">A</td>
164    </tr>
165    <tr class="gradeA">
166      <td>Gecko</td>
167      <td>Netscape Browser 8</td>
168      <td>Win 98SE+</td>
169      <td class="center">1.7</td>
170      <td class="center">A</td>
171    </tr>
172    <tr class="gradeA">
173      <td>Gecko</td>
174      <td>Netscape Navigator 9</td>
175      <td>Win 98+ / OSX.2+</td>
176      <td class="center">1.8</td>
177      <td class="center">A</td>
178    </tr>
179    <tr class="gradeA">
180      <td>Gecko</td>
181      <td>Mozilla 1.0</td>
182      <td>Win 95+ / OSX.1+</td>
183      <td class="center">1</td>
184      <td class="center">A</td>
185    </tr>
186    <tr class="gradeA">
187      <td>Gecko</td>
188      <td>Mozilla 1.1</td>
189      <td>Win 95+ / OSX.1+</td>
190      <td class="center">1.1</td>
191      <td class="center">A</td>
192    </tr>
193    <tr class="gradeA">
194      <td>Gecko</td>
195      <td>Mozilla 1.2</td>
196      <td>Win 95+ / OSX.1+</td>
197      <td class="center">1.2</td>
198      <td class="center">A</td>
199    </tr>
200    <tr class="gradeA">
201      <td>Gecko</td>
202      <td>Mozilla 1.3</td>
203      <td>Win 95+ / OSX.1+</td>
204      <td class="center">1.3</td>
205      <td class="center">A</td>
206    </tr>
207    <tr class="gradeA">
208      <td>Gecko</td>
209      <td>Mozilla 1.4</td>
210      <td>Win 95+ / OSX.1+</td>
211      <td class="center">1.4</td>
212      <td class="center">A</td>
213    </tr>
214    <tr class="gradeA">
215      <td>Gecko</td>
216      <td>Mozilla 1.5</td>
217      <td>Win 95+ / OSX.1+</td>
218      <td class="center">1.5</td>
219      <td class="center">A</td>
220    </tr>
221    <tr class="gradeA">
222      <td>Gecko</td>
223      <td>Mozilla 1.6</td>
224      <td>Win 95+ / OSX.1+</td>
225      <td class="center">1.6</td>
226      <td class="center">A</td>
227    </tr>
228    <tr class="gradeA">
229      <td>Gecko</td>
230      <td>Mozilla 1.7</td>
231      <td>Win 98+ / OSX.1+</td>
232      <td class="center">1.7</td>
233      <td class="center">A</td>
234    </tr>
235    <tr class="gradeA">
236      <td>Gecko</td>
237      <td>Mozilla 1.8</td>
238      <td>Win 98+ / OSX.1+</td>
239      <td class="center">1.8</td>
240      <td class="center">A</td>
241    </tr>
242    <tr class="gradeA">
243      <td>Gecko</td>
244      <td>Seamonkey 1.1</td>
245      <td>Win 98+ / OSX.2+</td>
246      <td class="center">1.8</td>
247      <td class="center">A</td>
248    </tr>
249    <tr class="gradeA">
250      <td>Gecko</td>
251      <td>Epiphany 2.20</td>
252      <td>Gnome</td>
253      <td class="center">1.8</td>
254      <td class="center">A</td>
255    </tr>
256    <tr class="gradeA">
257      <td>Webkit</td>
258      <td>Safari 1.2</td>
259      <td>OSX.3</td>
260      <td class="center">125.5</td>
261      <td class="center">A</td>
262    </tr>
263    <tr class="gradeA">
264      <td>Webkit</td>
265      <td>Safari 1.3</td>
266      <td>OSX.3</td>
267      <td class="center">312.8</td>
268      <td class="center">A</td>
269    </tr>
270    <tr class="gradeA">
271      <td>Webkit</td>
272      <td>Safari 2.0</td>
273      <td>OSX.4+</td>
274      <td class="center">419.3</td>
275      <td class="center">A</td>
276    </tr>
277    <tr class="gradeA">
278      <td>Webkit</td>
279      <td>Safari 3.0</td>
280      <td>OSX.4+</td>
281      <td class="center">522.1</td>
282      <td class="center">A</td>
283    </tr>
284    <tr class="gradeA">
285      <td>Webkit</td>
286      <td>OmniWeb 5.5</td>
287      <td>OSX.4+</td>
288      <td class="center">420</td>
289      <td class="center">A</td>
290    </tr>
291    <tr class="gradeA">
292      <td>Webkit</td>
293      <td>iPod Touch / iPhone</td>
294      <td>iPod</td>
295      <td class="center">420.1</td>
296      <td class="center">A</td>
297    </tr>
298    <tr class="gradeA">
299      <td>Webkit</td>
300      <td>S60</td>
301      <td>S60</td>
302      <td class="center">413</td>
303      <td class="center">A</td>
304    </tr>
305    <tr class="gradeA">
306      <td>Presto</td>
307      <td>Opera 7.0</td>
308      <td>Win 95+ / OSX.1+</td>
309      <td class="center">-</td>
310      <td class="center">A</td>
311    </tr>
312    <tr class="gradeA">
313      <td>Presto</td>
314      <td>Opera 7.5</td>
315      <td>Win 95+ / OSX.2+</td>
316      <td class="center">-</td>
317      <td class="center">A</td>
318    </tr>
319    <tr class="gradeA">
320      <td>Presto</td>
321      <td>Opera 8.0</td>
322      <td>Win 95+ / OSX.2+</td>
323      <td class="center">-</td>
324      <td class="center">A</td>
325    </tr>
326    <tr class="gradeA">
327      <td>Presto</td>
328      <td>Opera 8.5</td>
329      <td>Win 95+ / OSX.2+</td>
330      <td class="center">-</td>
331      <td class="center">A</td>
332    </tr>
333    <tr class="gradeA">
334      <td>Presto</td>
335      <td>Opera 9.0</td>
336      <td>Win 95+ / OSX.3+</td>
337      <td class="center">-</td>
338      <td class="center">A</td>
339    </tr>
340    <tr class="gradeA">
341      <td>Presto</td>
342      <td>Opera 9.2</td>
343      <td>Win 88+ / OSX.3+</td>
344      <td class="center">-</td>
345      <td class="center">A</td>
346    </tr>
347    <tr class="gradeA">
348      <td>Presto</td>
349      <td>Opera 9.5</td>
350      <td>Win 88+ / OSX.3+</td>
351      <td class="center">-</td>
352      <td class="center">A</td>
353    </tr>
354    <tr class="gradeA">
355      <td>Presto</td>
356      <td>Opera for Wii</td>
357      <td>Wii</td>
358      <td class="center">-</td>
359      <td class="center">A</td>
360    </tr>
361    <tr class="gradeA">
362      <td>Presto</td>
363      <td>Nokia N800</td>
364      <td>N800</td>
365      <td class="center">-</td>
366      <td class="center">A</td>
367    </tr>
368    <tr class="gradeA">
369      <td>Presto</td>
370      <td>Nintendo DS browser</td>
371      <td>Nintendo DS</td>
372      <td class="center">8.5</td>
373      <td class="center">C/A<sup>1</sup></td>
374    </tr>
375    <tr class="gradeC">
376      <td>KHTML</td>
377      <td>Konqureror 3.1</td>
378      <td>KDE 3.1</td>
379      <td class="center">3.1</td>
380      <td class="center">C</td>
381    </tr>
382    <tr class="gradeA">
383      <td>KHTML</td>
384      <td>Konqureror 3.3</td>
385      <td>KDE 3.3</td>
386      <td class="center">3.3</td>
387      <td class="center">A</td>
388    </tr>
389    <tr class="gradeA">
390      <td>KHTML</td>
391      <td>Konqureror 3.5</td>
392      <td>KDE 3.5</td>
393      <td class="center">3.5</td>
394      <td class="center">A</td>
395    </tr>
396    <tr class="gradeX">
397      <td>Tasman</td>
398      <td>Internet Explorer 4.5</td>
399      <td>Mac OS 8-9</td>
400      <td class="center">-</td>
401      <td class="center">X</td>
402    </tr>
403    <tr class="gradeC">
404      <td>Tasman</td>
405      <td>Internet Explorer 5.1</td>
406      <td>Mac OS 7.6-9</td>
407      <td class="center">1</td>
408      <td class="center">C</td>
409    </tr>
410    <tr class="gradeC">
411      <td>Tasman</td>
412      <td>Internet Explorer 5.2</td>
413      <td>Mac OS 8-X</td>
414      <td class="center">1</td>
415      <td class="center">C</td>
416    </tr>
417    <tr class="gradeA">
418      <td>Misc</td>
419      <td>NetFront 3.1</td>
420      <td>Embedded devices</td>
421      <td class="center">-</td>
422      <td class="center">C</td>
423    </tr>
424    <tr class="gradeA">
425      <td>Misc</td>
426      <td>NetFront 3.4</td>
427      <td>Embedded devices</td>
428      <td class="center">-</td>
429      <td class="center">A</td>
430    </tr>
431    <tr class="gradeX">
432      <td>Misc</td>
433      <td>Dillo 0.8</td>
434      <td>Embedded devices</td>
435      <td class="center">-</td>
436      <td class="center">X</td>
437    </tr>
438    <tr class="gradeX">
439      <td>Misc</td>
440      <td>Links</td>
441      <td>Text only</td>
442      <td class="center">-</td>
443      <td class="center">X</td>
444    </tr>
445    <tr class="gradeX">
446      <td>Misc</td>
447      <td>Lynx</td>
448      <td>Text only</td>
449      <td class="center">-</td>
450      <td class="center">X</td>
451    </tr>
452    <tr class="gradeC">
453      <td>Misc</td>
454      <td>IE Mobile</td>
455      <td>Windows Mobile 6</td>
456      <td class="center">-</td>
457      <td class="center">C</td>
458    </tr>
459    <tr class="gradeC">
460      <td>Misc</td>
461      <td>PSP browser</td>
462      <td>PSP</td>
463      <td class="center">-</td>
464      <td class="center">C</td>
465    </tr>
466    <tr class="gradeU">
467      <td>Other browsers</td>
468      <td>All others</td>
469      <td>-</td>
470      <td class="center">-</td>
471      <td class="center">U</td>
472    </tr>
473  </tbody>
474  <tfoot>
475    <tr>
476      <th>Rendering engine</th>
477      <th>Browser</th>
478      <th>Platform(s)</th>
479      <th>Engine version</th>
480      <th>CSS grade</th>
481    </tr>
482  </tfoot>
483</table>
484      </div>
485      <div class="spacer"></div>
486     
487     
488      <h1>Initialisation code</h1>
489      <pre>$(document).ready(function() {
490  /* Add a click handler to the rows - this could be used as a callback */
491  $('#example tr').click( function() {
492    if ( $(this).hasClass('row_selected') )
493      $(this).removeClass('row_selected');
494    else
495      $(this).addClass('row_selected');
496  } );
497 
498  /* Init the table */
499  var oTable = $('#example').dataTable( );
500} );
501
502/*
503 * I don't actually use this here, but it is provided as it might be useful and demonstrates
504 * getting the TR nodes from DataTables
505 */
506function fnGetSelected( oTableLocal )
507{
508  var aReturn = new Array();
509  var aTrs = oTableLocal.fnGetNodes();
510 
511  for ( var i=0 ; i&lt;aTrs.length ; i++ )
512  {
513    if ( $(aTrs[i]).hasClass('row_selected') )
514    {
515      aReturn.push( aTrs[i] );
516    }
517  }
518  return aReturn;
519}</pre>
520     
521     
522      <h1>Other examples</h1>
523      <h2>Basic initialisation</h2>
524      <ul>
525        <li><a href="../basic_init/zero_config.html">Zero configuration</a></li>
526        <li><a href="../basic_init/filter_only.html">Feature enablement</a></li>
527        <li><a href="../basic_init/table_sorting.html">Sorting data</a></li>
528        <li><a href="../basic_init/multi_col_sort.html">Multi-column sorting</a></li>
529        <li><a href="../basic_init/multiple_tables.html">Multiple tables</a></li>
530        <li><a href="../basic_init/hidden_columns.html">Hidden columns</a></li>
531        <li><a href="../basic_init/dom.html">DOM positioning</a></li>
532        <li><a href="../basic_init/state_save.html">State saving</a></li>
533        <li><a href="../basic_init/alt_pagination.html">Alternative pagination styles</a></li>
534        <li>Scrolling:
535          <a href="../basic_init/scroll_x.html">Horizontal</a> /
536          <a href="../basic_init/scroll_y.html">Vertical</a> /
537          <a href="../basic_init/scroll_xy.html">Both</a> /
538          <a href="../basic_init/scroll_y_theme.html">Themed</a> /
539          <a href="../basic_init/scroll_y_infinite.html">Infinite</a>
540        </li>
541        <li><a href="../basic_init/language.html">Change language information (internationalisation)</a></li>
542        <li><a href="../basic_init/themes.html">ThemeRoller themes (Smoothness)</a></li>
543      </ul>
544     
545      <h2>Advanced initialisation</h2>
546      <ul>
547        <li><a href="../advanced_init/events_pre_init.html">Events (pre initialisation)</a></li>
548        <li><a href="../advanced_init/events_post_init.html">Events (post initialisation)</a></li>
549        <li><a href="../advanced_init/column_render.html">Column rendering</a></li>
550        <li><a href="../advanced_init/html_sort.html">Sorting without HTML tags</a></li>
551        <li><a href="../advanced_init/dom_multiple_elements.html">Multiple table controls (sDom)</a></li>
552        <li><a href="../advanced_init/length_menu.html">Defining length menu options</a></li>
553        <li><a href="../advanced_init/dom_toolbar.html">Custom toolbar (element) around table</a></li>
554        <li><a href="../advanced_init/highlight.html">Row highlighting with CSS</a></li>
555        <li><a href="../advanced_init/complex_header.html">Column grouping through col/row spans</a></li>
556        <li><a href="../advanced_init/row_grouping.html">Row grouping</a></li>
557        <li><a href="../advanced_init/row_callback.html">Row callback</a></li>
558        <li><a href="../advanced_init/footer_callback.html">Footer callback</a></li>
559        <li><a href="../advanced_init/language_file.html">Change language information from a file (internationalisation)</a></li>
560      </ul>
561     
562      <h2>Data sources</h2>
563      <ul>
564        <li><a href="../data_sources/dom.html">DOM</a></li>
565        <li><a href="../data_sources/js_array.html">Javascript array</a></li>
566        <li><a href="../data_sources/ajax.html">Ajax source</a></li>
567        <li><a href="../data_sources/server_side.html">Server side processing</a></li>
568      </ul>
569     
570      <h2>Server-side processing</h2>
571      <ul>
572        <li><a href="../server_side/server_side.html">Obtain server-side data</a></li>
573        <li><a href="../server_side/custom_vars.html">Add extra HTTP variables</a></li>
574        <li><a href="../server_side/post.html">Use HTTP POST</a></li>
575        <li><a href="../server_side/column_ordering.html">Custom column ordering (in callback data)</a></li>
576        <li><a href="../server_side/pipeline.html">Pipelining data (reduce Ajax calls for paging)</a></li>
577        <li><a href="../server_side/row_details.html">Show and hide details about a particular record</a></li>
578        <li><a href="../server_side/select_rows.html">User selectable rows (multiple rows)</a></li>
579      </ul>
580     
581      <h2>API</h2>
582      <ul>
583        <li><a href="../api/add_row.html">Dynamically add a new row</a></li>
584        <li><a href="../api/multi_filter.html">Individual column filtering (using "input" elements)</a></li>
585        <li><a href="../api/multi_filter_select.html">Individual column filtering (using "select" elements)</a></li>
586        <li><a href="../api/highlight.html">Highlight rows and columns</a></li>
587        <li><a href="../api/row_details.html">Show and hide details about a particular record</a></li>
588        <li><a href="../api/select_row.html">User selectable rows (multiple rows)</a></li>
589        <li><a href="../api/select_single_row.html">User selectable rows (single row) and delete rows</a></li>
590        <li><a href="../api/editable.html">Editable rows (with jEditable)</a></li>
591        <li><a href="../api/form.html">Submit form with elements in table</a></li>
592        <li><a href="../api/counter_column.html">Index column (static number column)</a></li>
593        <li><a href="../api/show_hide.html">Show and hide columns dynamically</a></li>
594        <li><a href="../api/api_in_init.html">API function use in initialisation object (callback)</a></li>
595        <li><a href="../api/tabs_and_scrolling.html">DataTables scrolling and tabs</a></li>
596        <li><a href="../api/regex.html">Regular expression filtering</a></li>
597      </ul>
598     
599      <h2>Plug-ins</h2>
600      <ul>
601        <li><a href="../plug-ins/plugin_api.html">Add custom API functions</a></li>
602        <li><a href="../plug-ins/sorting_plugin.html">Sorting and type detection</a></li>
603        <li><a href="../plug-ins/paging_plugin.html">Custom pagination controls</a></li>
604        <li><a href="../plug-ins/range_filtering.html">Range filtering / custom filtering</a></li>
605        <li><a href="../plug-ins/dom_sort.html">Live DOM sorting</a></li>
606        <li><a href="../plug-ins/html_sort.html">Automatic HTML type detection</a></li>
607      </ul>
608     
609     
610      <p>Please refer to the <a href="http://www.datatables.net/"><i>DataTables</i> documentation</a> for full information about its API properties and methods.</p>
611     
612     
613      <div id="footer" style="text-align:center;">
614        <span style="font-size:10px;">DataTables &copy; Allan Jardine 2008-2010</span>
615      </div>
616    </div>
617  </body>
618</html>
Note: See TracBrowser for help on using the repository browser.