2012-04-12 22:05:28 +00:00
<!DOCTYPE html>
< html >
< head >
< meta charset = "utf-8" >
< title > jQuery plugin: Tablesorter 2.0 - Sorting empty cells< / title >
<!-- jQuery -->
< script src = "http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js" > < / script >
<!-- Demo stuff -->
< link rel = "stylesheet" href = "css/jq.css" >
< script src = "js/chili/jquery.chili-2.2.js" > < / script >
< script src = "js/chili/recipes.js" > < / script >
< script src = "js/docs.js" > < / script >
<!-- Tablesorter: required -->
2012-09-27 19:57:19 +00:00
< link rel = "stylesheet" href = "../css/theme.blue.css" >
2012-04-12 22:05:28 +00:00
< script src = "../js/jquery.tablesorter.js" > < / script >
< script id = "js" > $ ( f u n c t i o n ( ) {
// call the tablesorter plugin
$("table").tablesorter({
2012-09-27 19:57:19 +00:00
theme : 'blue',
2012-04-20 16:09:43 +00:00
// default "emptyTo"
emptyTo: 'bottom'
2012-04-12 22:05:28 +00:00
});
});< / script >
< script >
$(function(){
$('select').change(function(){
var t = $('table'),
2012-04-20 16:09:43 +00:00
v = $(this).val();
t[0].config.emptyTo = v;
t.trigger("update");
2012-04-12 22:05:28 +00:00
});
});
< / script >
< / head >
< body >
< div id = "banner" >
< h1 > table< em > sorter< / em > < / h1 >
< h2 > Sorting empty cells< / h2 >
< h3 > Flexible client-side table sorting< / h3 >
< a href = "index.html" > Back to documentation< / a >
< / div >
< div id = "main" >
< p class = "tip" >
< em > NOTE!< / em >
2012-09-27 19:57:19 +00:00
Set the < code > emptyTo< / code > selector below:
2012-04-12 22:05:28 +00:00
< ul >
2012-09-27 19:57:19 +00:00
< li > < code > top< / code > - sort empty table cells to the top.< / li >
< li > < code > bottom< / code > - sort empty table cells to the bottom.< / li >
< li > < code > none< / code > or < code > zero< / code > - sort empty table cells as if the cell has the value equal to zero.< / li >
< li > Individual columns can be modified by adding the following (they all do the same thing), set in order of priority:
2012-04-20 16:09:43 +00:00
< ul >
2012-09-27 19:57:19 +00:00
< li > jQuery data < code > data-empty="top"< / code > .< / li >
< li > metadata < code > class="{ empty: 'top'}"< / code > . This requires the metadata plugin.< / li >
< li > headers option < code > headers : { 0 : { empty : 'top' } }< / code > .< / li >
< li > header class name < code > class="empty-top"< / code > .< / li >
2012-04-20 16:09:43 +00:00
< li > Overall < code > emptyTo< / code > option.< / li >
< / ul >
< / li >
2012-09-27 19:57:19 +00:00
< li > < code > emptyToBottom< / code > option was added in v2.1.11, then replaced by the < code > emptyTo< / code > option in v2.1.16.< / li >
2012-04-12 22:05:28 +00:00
< / ul >
< / p >
< h1 > Demo< / h1 >
2012-09-27 19:57:19 +00:00
Set < code > emptyTo< / code > option: < select >
2012-04-20 16:09:43 +00:00
< option > bottom< / option >
< option > top< / option >
< option > zero< / option >
2012-04-12 22:05:28 +00:00
< / select >
< div id = "demo" > < table class = "tablesorter" >
< thead >
< tr >
2012-09-27 19:57:19 +00:00
< th class = "empty-top" > *Account #< / th > <!-- empty - top class has higher priority than the "emptyTo" option -->
2012-04-12 22:05:28 +00:00
< th > First Name< / th >
< th > Last Name< / th >
< th > Age< / th >
< th > Total< / th >
< th > Discount< / th >
< th > Diff< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > A43< / td >
< td > Peter< / td >
< td > Parker< / td >
< td > 28< / td >
< td > < / td >
< td > 20.3%< / td >
< td > +3< / td >
< / tr >
< tr >
< td > A255< / td >
< td > < / td >
< td > Hood< / td >
< td > < / td >
< td > 19.99< / td >
< td > 25.1%< / td >
< td > -7< / td >
< / tr >
< tr >
< td > < / td >
< td > Clark< / td >
< td > < / td >
< td > 18< / td >
< td > 15.89< / td >
< td > 44.2%< / td >
< td > -15< / td >
< / tr >
< tr >
< td > A1< / td >
< td > Bruce< / td >
< td > Almighty< / td >
< td > 45< / td >
< td > 153.19< / td >
< td > < / td >
< td > +19< / td >
< / tr >
< tr >
< td > A102< / td >
< td > Bruce< / td >
< td > Evans< / td >
< td > 56< / td >
< td > 153.19< / td >
< td > 23%< / td >
< td > < / td >
< / tr >
2012-04-18 18:47:00 +00:00
< tr >
< td > A109< / td >
< td > Larry< / td >
< td > Stevens< / td >
< td > 56< / td >
< td > 153.19< / td >
< td > 23%< / td >
< td > 0< / td >
< / tr >
< tr >
< td > A99< / td >
< td > John< / td >
< td > Smithy< / td >
< td > 56< / td >
< td > 156< / td >
< td > 22%< / td >
< td > < / td >
< / tr >
< tr >
< td > A119< / td >
< td > Mike< / td >
< td > Rowe< / td >
< td > 55< / td >
< td > -53.99< / td >
< td > 13%< / td >
< td > 0< / td >
< / tr >
2012-04-12 22:05:28 +00:00
< / tbody >
< / table > < / div >
2012-09-27 19:57:19 +00:00
* < strong > Note< / strong > : The "Account #" column has the "empty-top" class name set which over-rides the < code > emptyTo< / code > option (see the order of priority note above).
2012-04-12 22:05:28 +00:00
< h1 > Javascript< / h1 >
< div id = "javascript" >
< pre class = "js" > < / pre >
< / div >
< h1 > HTML< / h1 >
< div id = "html" >
< pre class = "html" > < / pre >
< / div >
< div class = "next-up" >
< hr / >
Next up: < a href = "example-option-sort-key.html" > Change the default multi-sorting key › › < / a >
< / div >
< / div >
< / body >
< / html >