jQuery tablesorterプラグインの使用

10821 ワード

. Complex can be slow in large tables so consider writing your own text extraction function "myTextExtraction"which you define like:
var myTextExtraction = function(node)  
{  
    // extract data from markup and return it  
    return node.childNodes[0].childNodes[0].innerHTML; 

$(document).ready(function() 
    { 
        $("#myTable").tableSorter( {textExtraction: myTextExtraction} ); 
    } 
); 
tablesorter will pass a jQuery object containing the contents of the current cell for you to parse and return. Thanks to Josh Nathanson for the examples.
Property
Type
Default
Description
Link
cancelSelection
Boolean
true
Indicates if tablesorter should disable selection of text in the table header (TH). Makes header behave more like a button.
 
cssAsc
String
"headerSortUp"
The CSS style used to style the header when sorting ascending. Example from the blue skin:
th.headerSortUp { 
    background-imageurl(../img/small_asc.gif); 
    background-color#3399FF


 
cssDesc
String
"headerSortDown"
The CSS style used to style the header when sorting descending. Example from the blue skin:
th.headerSortDown { 
    background-imageurl(../img/small_desc.gif); 
    background-color#3399FF


 
cssHeader
String
"header"
The CSS style used to style the header in its unsorted state. Example from the blue skin:
th.header { 
    background-imageurl(../img/small.gif);     
    cursorpointer
    font-weightbold
    background-repeatno-repeat
    background-positioncenter left
    padding-left20px
    border-right1px solid #dad9c7
    margin-left: -1px


 
debug
Boolean
false
Boolean flag indicating if tablesorter should display debuging information usefull for development.
Example
headers
Object
null
An object of instructions for per-column controls in the format: headers: { 0: { option: setting }, ... } For example, to disable sorting on the first two columns of a table: headers: { 0: { sorter: false}, 1: {sorter: false} }
Example
sortForce
Array
null
Use to add an additional forced sort that will be appended to the dynamic selections by the user. For example, can be used to sort people alphabetically after some other user-selected sort that results in rows with the same value like dates or money due. It can help prevent data from appearing as though it has a random secondary sort.
Example
sortList
Array
null
An array of instructions for per-column sorting and direction in the format: [[columnIndex, sortDirection], ... ] where columnIndex is a zero-based index for your columns left-to-right and sortDirection is 0 for Ascending and 1 for Descending. A valid argument that sorts ascending first by column 1 and then column 2 looks like: [[0,0],[1,0]]
Example
sortMultiSortKey
String
shiftKey
The key used to select more than one column for multi-column sorting. Defaults to the shift key. Other options might be ctrlKey, altKey. Reference: http://developer.mozilla.org/en/docs/DOM:event#Properties
Example
textExtraction
String Or Function
simple
Defines which method is used to extract data from a table cell for sorting. Built-in options include "simple"and "complex". Use complex if you have data marked up inside of a table cell like: 123 Main Street
Example
widthFixed
Boolean
false
Indicates if tablesorter should apply fixed widths to the table columns. This is useful for the Pager companion. Requires the jQuery dimension plugin to work.
Example
--------------------------------------------------------------------------------------------------------------------
 
   New Document          
 
 
 
 
 


 


 
  
       
        
        
        
        
    
   
  
  
       
        
        
        
        
    
   
       
        
        
        
        
    
   
       
        
        
        
        
    
   
       
        
        
        
        
    
   
  
  
Last NameFirst NameEmailDueWeb Site
SmithJohn[email protected]$50.00http://www.jsmith.com
BachFrank[email protected]$50.00http://www.frank.com
DoeJason[email protected]$100.00http://www.jdoe.com
ConwayTim[email protected]$50.00http://www.timconway.com

 

 


----------------------------------------------------------------------------------------------------------------


 


 


table{
 border:0px solid #EEE;
 cellspacing:1px;
}
th{
 background-image:url(bg.gif);
 background-color: #88FFFF;
}
th.headerSortUp {
 background-image: url(asc.gif);
 background-color: #3399FF;
}
th.headerSortDown{
 background-image: url(desc.gif);
 background-color: #3399FF;
}
th.header {
 background-image:url(bg.gif);
 cursor: pointer;
 font-weight: bold;
 background-repeat: no-repeat;
 background-position: center right;
 padding-left:20px;
 border-right:0px solid #dad9c7;
 margin-left: -1px;
}
td{
 width:150px;
}


 


 


----------------------------------------------------------------------------------------------------------------


 


/**
 Start by telling tablesorter to sort your table when the document is loaded:
*/
$(document).ready(function(){
 $("#myTable").tablesorter();
});
/**
配列表[0,0][1,0]第1列、第2列を昇順に並べ替える[列インデックス、並べ替え方向]0 asc 1 desc
Click on the headers and you'll see that your table is now sortable!You can also pass in configuration options when you initialize the table. This tells tablesorter to sort on the first and second column in ascending order.
*/
$(document).ready(function(){
 $("#myTable").tablesorter( {sortList: [[0,0], [1,0]]} );
});
/**
ソートオプション設定
*/
$(document).ready(function(){
 $("#myTable").tablesorter({widthFixed: true, widgets: ['zebra']});
});
/*
var myTextExtraction = function(node){
 //extract data from markup and return it     
 return node.childNodes[0].childNodes[0].innerHTML;
}
$(document).ready(function(){
 $("#myTable").tableSorter({textExtraction: myTextExtraction});
});
*/


/**
第2列は禁止する.3列ごとに
*/
$(document)をソートする.ready(function(){
 $("myTable").tablesorter({
  //pass the headers argument and assing a object
  headers: {
   //assign the secound column (we start counting zero)
   1: {
   //disable it by setting the property sorter to false
   sorter: false},
   //assign the third column (we start counting zero)
   2: {
   //disable it by setting the property sorter to false
   sorter: false}
  }
 });
});


/**
THを使用するとボタン
$(document)に似ています.ready(function(){
 $("#myTable").tableSorter(
  {cancelSelection:true}
 );
});
*/


/**
ある列を強制的に並べ替えると動かなくなり、他の列はその列に従って並べ替える
Sort multiple columns simultaneously by holding down the shift key and clicking a second,third or even fourth column header!
*/
$(document).ready(function(){
 //call the tablesorter plugin/
 $("myTable").tablesorter({
  //set forced sort on the fourth column and i decending order.
  sortForce: [[0,0]]}
 );
});


/**
キーの交換
*/
$(document).ready(function(){
 //call the tablesorter plugin
 $("table").tablesorter({
  //change the multi sort key from the default shift to alt button
  sortMultiSortKey: 'altKey'
 });
});


/**
$(document).ready(function(){
 $("table").tablesorter();
 $("#ajax-append").click(function() {
  $.get("assets/ajax-content.html",function(html) {
   //append the "ajax'd"data to the table body
   $("table tbody").append(html);
   //let the plugin know that we made a update
   $("table").trigger("update");
   //set sorting column and direction, this will sort on the first and third column
   var sorting = [[2,1],[0,0]];
   //sort on the first column
   $("table").trigger("sorton",[sorting]);
  });
  return false;
 });
});
**/


$(document).ready(function(){
 $("myTable").tablesorter({widthFixed: true, widgets: ['zebra']})
  .tablesorterPager({container: $("#pager")});
});