在我的表(JQuery Datatables)中,有一行(最后一行)总是必须在末尾(它是总数)。
我可以区分它的价值,因为它们就像:
<td><span class="last-row">MY VALUE</span></td>
无论排序是哪一列,无论排序是ASC还是DESC,我怎样才能使排序功能始终将这种行放在最后?
答案 0 :(得分:3)
只是为了充实SiGanteng建议的内容,您可以使用元素tfoot
来定义表格中的页脚行。
<table>
<thead>
<tr>
<!-- modern browsers know how to render these, it is also used by screen readers and other assistive technologies -->
<td>header 1</td>
<td>header 2</td>
<td>header 3</td>
</tr>
</thead>
<tfoot> <!--ditto-->
<tr>
<td colspan="3">footer text</td>
</tr>
</tfoot>
<tbody>
<!-- regular html rows & cols here -->
</tbody>
</table>
答案 1 :(得分:0)
是
如果它必须是td元素,那么你将不得不创建一个自定义函数排序插件 http://www.datatables.net/plug-ins/sorting
下面是一个排序插件的示例,它始终将空字段放在底部,您可以通过调整来调整以在列中查找您的特殊值,无论其类型是什么类型。为你的val,并在aoColums stype中指定它
jQuery.fn.dataTableExt.oSort['mystring-asc'] = function(x,y) {
var retVal;
x = $.trim(x);
y = $.trim(y);
if (x==y) retVal= 0;
else if (x == "" || x == " ") retVal= 1;
else if (y == "" || y == " ") retVal= -1;
else if (x > y) retVal= 1;
else retVal = -1; // <- this was missing in version 1
return retVal;
}
jQuery.fn.dataTableExt.oSort['mystring-desc'] = function(y,x) {
var retVal;
x = $.trim(x);
y = $.trim(y);
if (x==y) retVal= 0;
else if (x == "" || x == " ") retVal= -1;
else if (y == "" || y == " ") retVal= 1;
else if (x > y) retVal= 1;
else retVal = -1; // <- this was missing in version 1
return retVal;
}
datatable()函数中的赋值
...
"aoColumns": [
{ "sType": 'mystring' },
...