1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
4 <meta http-equiv="content-type" content="text/html; charset=utf-8">
5 <link rel="shortcut icon" type="image/ico" href="http://www.sprymedia.co.uk/media/images/favicon.ico">
7 <title>ColVis example</title>
8 <style type="text/css" title="currentStyle">
9 @import "../../media/css/demo_page.css";
10 @import "../../media/css/demo_table.css";
11 @import "media/css/ColVis.css";
13 <script type="text/javascript" charset="utf-8" src="../../media/js/jquery.js"></script>
14 <script type="text/javascript" charset="utf-8" src="../../media/js/jquery.dataTables.js"></script>
15 <script type="text/javascript" charset="utf-8" src="media/js/ColVis.js"></script>
16 <script type="text/javascript" charset="utf-8">
17 $(document).ready( function () {
18 var oTables = $('table').dataTable( {
22 var oColVis = new ColVis( oTables.fnSettings(), {
23 "fnStateChange": function ( iColumn, bVisible ) {
24 var jqTables = $('table:not(#example)'); // ColVis will do #example
25 for ( var i=0, iLen=jqTables.length ; i<iLen ; i++ ) {
26 $(jqTables[i]).dataTable().fnSetColumnVis( iColumn, bVisible );
31 document.getElementById('buttonInsert').appendChild(oColVis.dom.wrapper);
36 <body id="dt_example">
38 <div class="full_width big">
39 ColVis example - two tables with shared control
43 <p>This example shows how the API that ColVis presents can be used to control the column visibility of two tables with a single instance of ColVis. The result is that changing a button state will effect all tables on the page. This can be useful when looking at multiple tables which have the same column structure.</p>
48 <div id="buttonInsert">
51 <table cellpadding="0" cellspacing="0" border="0" class="display" id="example">
54 <th>Rendering engine</th>
57 <th>Engine version</th>
63 <th>Rendering engine</th>
66 <th>Engine version</th>
71 <tr class="odd_gradeX">
73 <td>Internet Explorer 4.0</td>
74 <td>Win 95+ (Entity: &)</td>
75 <td class="center">4</td>
76 <td class="center">X</td>
78 <tr class="even_gradeC">
80 <td>Internet Explorer 5.0</td>
82 <td class="center">5</td>
83 <td class="center">C</td>
85 <tr class="odd_gradeA">
87 <td>Internet Explorer 5.5</td>
89 <td class="center">5.5</td>
90 <td class="center">A</td>
92 <tr class="even_gradeA">
94 <td>Internet Explorer 6</td>
96 <td class="center">6</td>
97 <td class="center">A</td>
99 <tr class="odd_gradeA">
101 <td>Internet Explorer 7</td>
103 <td class="center">7</td>
104 <td class="center">A</td>
106 <tr class="even_gradeA">
108 <td>AOL browser (AOL desktop)</td>
110 <td class="center">6</td>
111 <td class="center">A</td>
116 <table cellpadding="0" cellspacing="0" border="0" class="display" id="example2">
119 <th>Rendering engine</th>
122 <th>Engine version</th>
128 <th>Rendering engine</th>
131 <th>Engine version</th>
136 <tr class="odd_gradeA">
137 <td>Gecko (UTF-8: $¢€)</td>
139 <td>Win 98+ / OSX.2+</td>
140 <td class="center">1.7</td>
141 <td class="center">A</td>
143 <tr class="even_gradeA">
146 <td>Win 98+ / OSX.2+</td>
147 <td class="center">1.8</td>
148 <td class="center">A</td>
150 <tr class="odd_gradeA">
153 <td>Win 98+ / OSX.2+</td>
154 <td class="center">1.8</td>
155 <td class="center">A</td>
157 <tr class="even_gradeA">
160 <td>Win 2k+ / OSX.3+</td>
161 <td class="center">1.9</td>
162 <td class="center">A</td>
164 <tr class="odd_gradeA">
168 <td class="center">1.8</td>
169 <td class="center">A</td>
171 <tr class="even_gradeA">
175 <td class="center">1.8</td>
176 <td class="center">A</td>
178 <tr class="odd_gradeA">
180 <td>Netscape 7.2</td>
181 <td>Win 95+ / Mac OS 8.6-9.2</td>
182 <td class="center">1.7</td>
183 <td class="center">A</td>
185 <tr class="even_gradeA">
187 <td>Netscape Browser 8</td>
189 <td class="center">1.7</td>
190 <td class="center">A</td>
192 <tr class="odd_gradeA">
194 <td>Netscape Navigator 9</td>
195 <td>Win 98+ / OSX.2+</td>
196 <td class="center">1.8</td>
197 <td class="center">A</td>
199 <tr class="even_gradeA">
202 <td>Win 95+ / OSX.1+</td>
203 <td class="center">1</td>
204 <td class="center">A</td>
206 <tr class="odd_gradeA">
209 <td>Win 95+ / OSX.1+</td>
210 <td class="center">1.1</td>
211 <td class="center">A</td>
213 <tr class="even_gradeA">
216 <td>Win 95+ / OSX.1+</td>
217 <td class="center">1.2</td>
218 <td class="center">A</td>
220 <tr class="odd_gradeA">
223 <td>Win 95+ / OSX.1+</td>
224 <td class="center">1.3</td>
225 <td class="center">A</td>
227 <tr class="even_gradeA">
230 <td>Win 95+ / OSX.1+</td>
231 <td class="center">1.4</td>
232 <td class="center">A</td>
234 <tr class="odd_gradeA">
237 <td>Win 95+ / OSX.1+</td>
238 <td class="center">1.5</td>
239 <td class="center">A</td>
241 <tr class="even_gradeA">
244 <td>Win 95+ / OSX.1+</td>
245 <td class="center">1.6</td>
246 <td class="center">A</td>
248 <tr class="odd_gradeA">
251 <td>Win 98+ / OSX.1+</td>
252 <td class="center">1.7</td>
253 <td class="center">A</td>
255 <tr class="even_gradeA">
258 <td>Win 98+ / OSX.1+</td>
259 <td class="center">1.8</td>
260 <td class="center">A</td>
262 <tr class="odd_gradeA">
264 <td>Seamonkey 1.1</td>
265 <td>Win 98+ / OSX.2+</td>
266 <td class="center">1.8</td>
267 <td class="center">A</td>
269 <tr class="even_gradeA">
271 <td>Epiphany 2.20</td>
273 <td class="center">1.8</td>
274 <td class="center">A</td>
280 <div class="spacer"></div>
285 <li><a href="index.html">Basic initialisation</a></li>
286 <li><a href="mouseover.html">Activate with a mouseover rather than click</a></li>
287 <li><a href="text.html">Custom text in the button</a></li>
288 <li><a href="theme.html">Using with jQuery UI ThemeRoller</a></li>
289 <li><a href="exclude_columns.html">Excluding columns from the show / hide list</a></li>
290 <li><a href="two_tables.html">Two tables initialised together - individual controls</a></li>
291 <li><a href="two_tables_identical.html">Two tables initialised together - shared control</a></li>
292 <li><a href="style.html">Alternative styling and reset to original</a></li>
293 <li><a href="title_callback.html">Customisation of the button label with a callback</a></li>
297 <h1>Initialisation code</h1>
298 <pre>$(document).ready( function () {
299 var oTables = $('table').dataTable( {
303 var oColVis = new ColVis( oTables.fnSettings() );
304 $(oColVis).bind('stateChange', function (e, data) {
305 var jqTables = $('table:not(#example)');
306 for ( var i=0, iLen=jqTables.length ; i<iLen ; i++ ) {
307 $(jqTables[i]).dataTable().fnSetColumnVis( data.iColumn, data.bVisible );
311 document.getElementById('buttonInsert').appendChild(oColVis.dom.wrapper);
315 <div id="footer" style="text-align:center;">
316 <span style="font-size:10px;">
317 ColVis and DataTables © Allan Jardine 2009-2010