Javascript 拆分a";“大”;表到较小的表
我想将一个“大”表(很多列)拆分为更小的表,例如每2列 有没有一个简单的方法 我只有这张桌子。例如,我想每两列拆分一次。因此,我应该有一个包含Javascript 拆分a";“大”;表到较小的表,javascript,jquery,html,html-table,Javascript,Jquery,Html,Html Table,我想将一个“大”表(很多列)拆分为更小的表,例如每2列 有没有一个简单的方法 我只有这张桌子。例如,我想每两列拆分一次。因此,我应该有一个包含#列的三个表,每个表包含大表中的两个列 所需输出:使用XSLT,您可以轻松解决问题 请访问此处:函数拆分($table,chunkSize){ var cols=$(“th”,表$).length-1; var n=cols/chunkSize; 对于(var i=1;i 1;j--){ 如果(j+chunkSize-1 chunkSize*i+1){ $
#
列的三个表,每个表包含大表中的两个列
所需输出:使用XSLT,您可以轻松解决问题 请访问此处:
函数拆分($table,chunkSize){
var cols=$(“th”,表$).length-1;
var n=cols/chunkSize;
对于(var i=1;i 1;j--){
如果(j+chunkSize-1 chunkSize*i+1){
$('td:n个子('+j+')、第th:n个子('+j+')、$newTable.remove();
}
}
}
}
其中,$table
是table jQuery对象,chunkSize
是每个分割的大小。在您的示例中,将其称为split($(“表”),2)
。请注意,chunkSize
必须平均划分列数(不包括第一列)才能正常工作,例如,对于包含7列的表,chunkSize
的有效值为1、2和3
我制作了更好版本的表拆分函数,它支持固定列(在所有表中重复),并且浪费了很多时间:
功能范围(开始、结束){
var数组=新数组();
对于(var i=start;i这要简单得多
1) 标记TR:
<tr><td>some</td><!-- SPLITHERE -->
一些
2) 拆分表:
document.body.innerHTML = document.body.innerHTML.replace(/<!-- SPLITHERE --\>\s*<\/tr>/i, '</tr></table></div><div class="eachPage"><table class="items">');
document.body.innerHTML=document.body.innerHTML.replace(/您想要的输出有点混乱。请为您想要的输出创建HTML代码。这里是:您想要一个特定于此示例的答案还是一个通用答案?我相信通用答案对其他人也会更有帮助..嗯,您不能为列分配类,克隆表,然后根据t隐藏类吗able/column类?有这样一个例子吗?XSLT是一个很好的建议,但需要先将这些数据转换为格式良好的XML文档。看起来不错,但如果有多个固定列,它就会断开。在fiddle上检查此项您可以使用var n=Math.ceil(cols/chunkSize);
,它将拆分您的6列表(不包括第一行)放入一个4列和2列的表中,如果您使用拆分($(“表”),4)
如何使用colspan处理表数据,我尝试使用此示例,但我的前2行包含所有colspan,并且由于列的数量不匹配,它会弄乱它下面的所有行
document.body.innerHTML = document.body.innerHTML.replace(/<!-- SPLITHERE --\>\s*<\/tr>/i, '</tr></table></div><div class="eachPage"><table class="items">');