File: example-option-sort-append.html

package info (click to toggle)
jquery-tablesorter 1%3A2.31.3%2Bdfsg1-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 5,056 kB
  • sloc: javascript: 19,495; sh: 14; makefile: 8
file content (128 lines) | stat: -rw-r--r-- 4,225 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>jQuery tablesorter 2.0 - Append a default sorting order</title>

	<!-- jQuery -->
	<script src="js/jquery-latest.min.js"></script>

	<!-- Demo stuff -->
	<link rel="stylesheet" href="css/jq.css">
	<link href="css/prettify.css" rel="stylesheet">
	<script src="js/prettify.js"></script>
	<script src="js/docs.js"></script>

	<!-- Tablesorter: required -->
	<link rel="stylesheet" href="../css/theme.blue.css">
	<style>
	th { width: 16.7%; }
	#result1, #result2 { color: red; font-size: .8em; font-weight: normal; vertical-align: text-top; }
	</style>
	<script src="../js/jquery.tablesorter.js"></script>

<script id="js">$(function() {
	$('#table1').tablesorter({
		theme : 'blue',

		// add sort on the first column and in ascending order AFTER the selected column
		sortAppend: [[0,0]]
	});

	$('#table2').tablesorter({
		theme : 'blue',

		// append different sort based on the first column sorted
		sortAppend: {
			0 : [[ 1, 'a' ]], // always apply ascending sort
			2 : [[ 3, 'o' ]], // sort "o"pposite of column 2 direction
			4 : [[ 5, 's' ], [ 0, 's' ] ]  // sort "s"ame as column 4 direction
		}
	});
});</script>
<script>
$(function() {
	// show sortList
	$('table').on('sortEnd', function() {
		var indx,
			list = '&nbsp;[ ',
			sortList = this.config.sortList,
			id = '#result' + this.id.match(/\d/);
		for ( indx = 0; indx < sortList.length; indx++ ) {
			list += '[ ' + sortList[ indx ].join( ',' ) + ' ]';
			if ( indx < sortList.length - 1 ) {
				list += ', ';
			}
		}
		$(id).html( list + ' ]' );
	});
});
</script>
</head>
<body>

<div id="banner">
	<h1>table<em>sorter</em></h1>
	<h2>Append to a sort order</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>
	</p>
	<ul>
		<li>In <span class="version">v2.24.0</span>, <code>sortAppend</code> can now be applied based on the primary column sort.</li>
		<li>Click to sort any column header to see the the first column sort is appended to the selected sort order.</li>
		<li>This option is part of the original plugin</li>
	</ul>

	<h1>Demo</h1>
	<div id="demo"><h4>"First Name" column ascending sort appended to any other sort: <small id="result1"></small></h4>
<table id="table1" class="tablesorter">
	<thead>
		<tr><th>First Name</th><th>Last Name</th><th>Age</th><th>Total</th><th>Discount</th><th>Date</th></tr>
	</thead>
	<tbody>
		<tr><td>Peter</td><td>Parker</td><td>28</td><td>$9.99</td><td>20%</td><td>Jan 18, 2001 9:12 AM</td></tr>
		<tr><td>John</td><td>Evans</td><td>33</td><td>$9.99</td><td>25%</td><td>Dec 10, 2002 5:14 AM</td></tr>
		<tr><td>Clark</td><td>Kent</td><td>22</td><td>$15.89</td><td>44%</td><td>Jan 12, 2003 11:14 AM</td></tr>
		<tr><td>Bruce</td><td>Almighty</td><td>45</td><td>$15.89</td><td>44%</td><td>Jan 18, 2001 9:12 AM</td></tr>
		<tr><td>Bruce</td><td>Evans</td><td>22</td><td>$13.19</td><td>11%</td><td>Jul 6, 2006 8:14 AM</td></tr>
	</tbody>
</table>

<h4>Append sorted column based on initially sorted column: <small id="result2"></small></h4>
<table id="table2" class="tablesorter">
	<thead>
		<tr><th>First Name (+Last)</th><th>Last Name</th><th>Age (+Total)</th><th>Total</th><th>Discount (+Date & First)</th><th>Date</th></tr>
	</thead>
	<tbody>
		<tr><td>Peter</td><td>Parker</td><td>28</td><td>$9.99</td><td>20%</td><td>Jan 18, 2001 9:12 AM</td></tr>
		<tr><td>John</td><td>Evans</td><td>33</td><td>$9.99</td><td>25%</td><td>Dec 10, 2002 5:14 AM</td></tr>
		<tr><td>Clark</td><td>Kent</td><td>22</td><td>$15.89</td><td>44%</td><td>Jan 12, 2003 11:14 AM</td></tr>
		<tr><td>Bruce</td><td>Almighty</td><td>45</td><td>$15.89</td><td>44%</td><td>Jan 18, 2001 9:12 AM</td></tr>
		<tr><td>Bruce</td><td>Evans</td><td>22</td><td>$13.19</td><td>11%</td><td>Jul 6, 2006 8:14 AM</td></tr>
	</tbody>
</table></div>

	<h1>Javascript</h1>
	<div id="javascript">
		<pre class="prettyprint lang-javascript"></pre>
	</div>
	<h1>HTML</h1>
	<div id="html">
		<pre class="prettyprint lang-html"></pre>
	</div>

<div class="next-up">
	<hr />
	Next up: <a href="example-child-rows.html">Working with Child Rows &rsaquo;&rsaquo;</a>
</div>

</div>

</body>
</html>