如何使用jquery将xxxx表行拆分为每个100的数组,并考虑四舍五入
How to split xxxx table rows into arrays of 100 each using jquery and account for rounding?
我正在尝试使用jquery对一个表进行分页。
我想将xxxx行拆分为每行100行的数组,然后我可以运行这些数组来填充我正在创建的子页面。
目前我正在尝试这个:
var rowsPerPageS = 100,
maxRows = table.find( "tbody tr, TBODY TR" ).length,
splitRows = [];
// split table array into array of 100
for( i = 0; i < Math.round(maxRows/rowsPerPageS); i++){
splitRows.push( $( table ).find( "tbody tr, TBODY TR" ).slice( rowsPerPage*i,rowsPerPageS*(i+1) ) )
}
以上内容似乎适用于100200300400等行,这将在我的数组中提供1、2、3、4个对象。但是,例如,如果我有333行,333/100=3.33=3个对象,并且我正在"删除"最后33行。
问题:
如何解释"不均匀"行数?如果我将+1加到循环的数量上,如果行是100200300或<99,所以这是不可能的。
有人能帮我吗?
"我想将xxxx行拆分为每个100行的阵列"
试试看。。。
var rowsPerPageS = 100,
splitRows = [],
rows = $( table ).find( "tbody tr" ).toArray();
for( i = 0; i < rows.length; i += rowsPerPageS ){
splitRows.push( rows.slice(i, i + rowsPerPageS ) );
}
<小时>如果您确实想要jQuery对象,那么可以去掉.toArray()
。
使用Math.ceil()而不是Math.round()。ceil将数字向上四舍五入到最接近的整数,同时四舍五舍五入。例如
Math.round(0.4) => 0
Math.ceil(0.1) => 1
Math.ceil(1) => 1
相关文章:
- 如何在映射数组中添加换行符
- javascript结合了数组和字典
- 需要帮助设置json数组
- 不能从angular2中的子组件指定父组件中的数组
- 使用JS将数组转换为json对象
- 数组在递归方法中设置为null
- knockoutjs可观察数组
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 将数组从PHP传递到Javascript
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 在函数中添加数组元素的数值
- 无法通过数组映射绑定
- javascript中的数组出错
- 如何使用 node.js 比较两个 json 数组
- Javascript(Angular)从一个对象数组到第二个数组查找值
- 根据id将json数组组合为一个json数组
- 如何通过数组更新角度子范围
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 如何将数组中的所有值四舍五入到小数点后2位
- 如何使用jquery将xxxx表行拆分为每个100的数组,并考虑四舍五入