tablesorter pager插件 - 将所有条目显示为默认值

时间:2013-10-07 13:57:53

标签: javascript jquery tablesorter

我正在使用此tableorter版本:http://tablesorter.com/docs/

有这个相关的html:

 <select class="pagesize form-control text-center">
        <option value="20">20</option>
        <option value="30">30</option>
        <option value="40">40</option>
        <option value="all" selected="selected">alle</option>
 </select>

和这个js:

function tableSorter()
{  
  $("#tableOverview")
    .tablesorter()
    .tablesorterPager({container: $("#pager")});

  var rows = $('table.tablesorter')[0].config.totalRows;
  $('select.pagesize').find('option:contains("all")').val(rows);
}

现在我希望在加载时显示默认/表格中的所有项目。如果它不是默认值,你必须在加载页面后选择它,它可以正常工作:

var rows = $('table.tablesorter')[0].config.totalRows;
$('select.pagesize').find('option:contains("all")').val(rows);

将jquery.tablesorter.pager.js中默认值的大小设置为高值也可以,但如果要对表进行排序(当时没有显示任何内容),则会导致错误。

那么有没有办法将分页的默认大小设置为表的所有条目?

2 个答案:

答案 0 :(得分:2)

您需要做的就是在选定的选项值和寻呼机9999选项(demo)中将值设置为某个非常大的数字,例如size:< / p>

HTML

<select class="pagesize">
    <option value="10">10</option>
    <option value="20">20</option>
    <option value="30">30</option>
    <option value="40">40</option>
    <option selected="selected" value="9999">all</option>
</select>

的Javascript

$('table')
    .tablesorter({
        widthFixed: true,
        widgets: ['zebra']
    })
    .tablesorterPager({
        container: $("#pager"),
        size: 9999 // pick a number larger than your table
    });

答案 1 :(得分:2)

   // edit in jquery.tablesorter.pager.js,
   // add to construct function
   var total_page= config.totalPages;
   var total_rows_per_page = config.size;
   var total_rows = total_page*total_rows_per_page;

   // set value all to .pagesize
   $(".pagesize").append('<option value="' + total_rows  + '">All</option>');