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