1. 程式人生 > >jquery合併前幾列單元格的方法

jquery合併前幾列單元格的方法

       今天在合併單元格的時候出現了很多問題,現在記錄如下,如果只是簡單合併幾列的話,下面介紹的方法都是可以用的!具體使用哪一種方法,各位看官自取所需吧,如果有更好的方法,歡迎各位在評論裡給出,並且第二種方法如果有人有優化方案了,也可以告訴我,讓我繼續學習優化一下自己的方法,想看效果的可以直接到最後貼上程式碼,給出全部程式碼(注意jquery包的匯入哦)!良心推薦大家直接看第二種方法中的方法2!題目標紅了,這個是最好用的方法!你會愛上我的!

合併之前的樣子:                      理想的效果圖為(參考第二種方法):    合併混亂的方法(適合少數列合併參考第一種方法):

             

第一,指定哪列合併哪列,這種的缺點很明顯,但是對於普通簡單的合併已經夠用了!錯亂了的合併,他不管前面的內容,只要你指定了這列,他就會對這列相鄰的相同元素進行合併,這種合併的結果如下圖所示:

方法1:

    jQuery.fn.rowspan = function(colIdx) { //封裝的一個JQuery小外掛
        return this.each(function(){
            var that;
            $('tr', this).each(function(row) {
                $('td:eq('+colIdx+')', this).filter(':visible').each(function(col) {
                    if (that!=null && $(this).html() == $(that).html()) {
                        rowspan = $(that).attr("rowSpan");
                        if (rowspan == undefined) {
                            $(that).attr("rowSpan",1);
                            rowspan = $(that).attr("rowSpan"); }
                        rowspan = Number(rowspan)+1;
                        $(that).attr("rowSpan",rowspan);
                        $(this).hide();
                    } else {
                        that = this;
                    }
                });
            });
        });
    }
	
	//tableId要合併的表的Id
	//arr指定要合併列的
	function  mergeRowCell(tableId,arr){
		for(var i =0; i<arr.length; i++){
			$("#"+tableId).rowspan(arr[i]);//傳入的引數是對應的列數從0開始
		}	
	}
  $(function() {
		//要合併哪些列	
		var arr = [0, 1, 2,3];
		mergeRowCell("table2",arr);
    });

方法2:

//arr  要合併的列數    tableid要合併的table的ID
	function formatTable(arr,tableid){
		var array=new Array();
		array=arr.split(",");
		for(var k=0;k<array.length;k++){
		var jqtid="#"+tableid;
		var $table=$(jqtid);  
			var tagStr="";  
			var name="";  
			$table.find("tr:gt(0)").each(function(i){  
				var $tr=$(this);  
				var $td=$tr.children("td:eq("+array[k]+")");  
				var tdname=$td.text();
				if(name==tdname){  
					//表示相同名字  
					$td.remove();  
				}else{  
					//  
					tagStr=tagStr+(i+1)+",";  
				}  
				name=tdname;  
			});  
			//對標記字串進行分割      
			var strs= new Array();  
			strs=tagStr.substring(0,tagStr.length-1).split(",");  
			var count=$table.find("tr:gt(0)").length+1;  
			for(i=0;i<strs.length;i++){  
				var s="tr:eq("+strs[i]+")"  
				if(i<strs.length-1){  
					//得到要合併的行數  
					$table.find(s).children("td:eq("+array[k]+")").attr("rowspan",(strs[i+1]-strs[i]));      
				}else{  
					$table.find(s).children("td:eq("+array[k]+")").attr("rowspan",(count-strs[i]));  
				}  
			}
		}
	}

    $(function() {		
		formatTable('2,1,0',"table2"); //要合併的列數,注意倒敘寫列,第一列從0開始  
    });

方法3:

/**
		* @ function:合併指定表格列(表格id為table_id)指定列(列數為table_colnum)的相同文字的相鄰單元格
		* @ param:table_id 為需要進行合併單元格的表格的id。如在HTMl中指定表格 id="data" ,此引數應為 #data 
		* @ param:arr 為需要合併單元格的所在列。為數字,從最左邊第一列為1開始算起。
		*/
		function table_rowspan(table_id, arr) {
			var array=new Array();
			array=arr.split(",");
			for(var k=0;k<array.length;k++){
					table_firsttd = "";
					table_currenttd = "";
					table_SpanNum = 0;
					table_Obj = $(table_id + " tr td:nth-child(" + array[k] + ")");
					
					table_Obj.each(function (i) {
						if (i == 0) {
							table_firsttd = $(this);
							table_SpanNum = 1;
						} else {
							table_currenttd = $(this);
							if (table_firsttd.text() == table_currenttd.text()) { //這邊注意不是val()屬性,而是text()屬性
								//td內容為空的不合並
								if(table_firsttd.text() !=""){
									table_SpanNum++;
									table_currenttd.hide(); //remove();
									table_firsttd.attr("rowSpan", table_SpanNum);
								}
							} else {
								table_firsttd = $(this);
								table_SpanNum = 1;
							}
						}
					});
				}
		}
   
  $(function() {		
		table_rowspan("#table2","1,2,3,4");
   });

方法4(來源於博友,貼上過來的程式碼,留著以備後面使用,全部程式碼可移步博友部落格

            $(function () {  
                // 看過jquery原始碼就可以發現$.fn就是$.prototype, 只是為了相容早期版本的外掛   
                // 才保留了jQuery.prototype這個形式   
                $.fn.mergeCell = function (options) {  
                    return this.each(function () {  
                        var cols = options.cols;  
                        for (var i = cols.length - 1; cols[i] != undefined; i--) {  
                            // fixbug console除錯   
                            // console.debug(cols[i]);   
                            mergeCell($(this), cols[i]);  
                        }  
                        dispose($(this));  
                    });  
                };  
                // 如果對javascript的closure和scope概念比較清楚, 這是個外掛內部使用的private方法     
                function mergeCell($table, colIndex) {  
                    $table.data('col-content', ''); // 存放單元格內容   
                    $table.data('col-rowspan', 1); // 存放計算的rowspan值 預設為1   
                    $table.data('col-td', $()); // 存放發現的第一個與前一行比較結果不同td(jQuery封裝過的), 預設一個"空"的jquery物件   
                    $table.data('trNum', $('tbody tr', $table).length); // 要處理表格的總行數, 用於最後一行做特殊處理時進行判斷之用   
                    // 我們對每一行資料進行"掃面"處理 關鍵是定位col-td, 和其對應的rowspan   
                    $('tbody tr', $table).each(function (index) {  
                        // td:eq中的colIndex即列索引   
                        var $td = $('td:eq(' + colIndex + ')', this);  
                        // 取出單元格的當前內容   
                        var currentContent = $td.html();  
                        // 第一次時走此分支   
                        if ($table.data('col-content') == '') {  
                            $table.data('col-content', currentContent);  
                            $table.data('col-td', $td);  
                        } else {  
                            // 上一行與當前行內容相同   
                            if ($table.data('col-content') == currentContent) {  
                                // 上一行與當前行內容相同則col-rowspan累加, 儲存新值   
                                var rowspan = $table.data('col-rowspan') + 1;  
                                $table.data('col-rowspan', rowspan);  
                                // 值得注意的是 如果用了$td.remove()就會對其他列的處理造成影響   
                                $td.hide();  
                                // 最後一行的情況比較特殊一點   
                                // 比如最後2行 td中的內容是一樣的, 那麼到最後一行就應該把此時的col-td裡儲存的td設定rowspan   
                                if (++index == $table.data('trNum'))  
                                    $table.data('col-td').attr('rowspan', $table.data('col-rowspan'));  
                            } else { // 上一行與當前行內容不同   
                                // col-rowspan預設為1, 如果統計出的col-rowspan沒有變化, 不處理   
                                if ($table.data('col-rowspan') != 1) {  
                                    $table.data('col-td').attr('rowspan', $table.data('col-rowspan'));  
                                }  
                                // 儲存第一次出現不同內容的td, 和其內容, 重置col-rowspan   
                                $table.data('col-td', $td);  
                                $table.data('col-content', $td.html());  
                                $table.data('col-rowspan', 1);  
                            }  
                        }  
                    });  
                }  
                // 同樣是個private函式 清理記憶體之用   
                function dispose($table) {  
                    $table.removeData();  
                }  
                $('#table2').mergeCell({  
                    // 目前只有cols這麼一個配置項, 用陣列表示列的索引,從0開始   
                    // 然後根據指定列來處理(合併)相同內容單元格   
                    cols: [0, 1, 2, 3]  
                });  
            }); 

第二,這種合併會解決上面的錯亂問題,但也有點問題,後續有時間了再去優化吧,滿足暫時使用了(再往後的話數量列合併出現點問題,還需再優化了),效果如下圖所示:

方法1:

//函式說明:合併指定表格(表格id為_w_table_id)指定列(行數大於_w_table_mincolnum 小於_w_table_maxcolnum)相同列中的相同文字的相鄰單元格
//          多於一列時,後一列的單元格合併範圍不能超過前一列的合併範圍。避免出現交錯。
//引數說明:_w_table_id 為需要進行合併單元格的表格id。如在HTMl中指定表格 id="data" ,此引數應為 #data 
//引數說明:_w_table_mincolnum 為需要進行比較合併的起始列數。為數字,則從最左邊第一行為1開始算起。
//          此引數可以為空,為空則第一列為起始列。
//          需要注意,如果第一列為序號列,則需要排除此列。
//引數說明:_w_table_maxcolnum 為需要進行比較合併的最大列數,列數大於這個數值的單元格將不進行比較合併。
//          為數字,從最左邊第一列為1開始算起。
//          此引數可以為空,為空則同_w_table_mincolnum。
function _w_table_lefttitle_rowspan(_w_table_id,_w_table_mincolnum,_w_table_maxcolnum){   
	 if(_w_table_mincolnum == void 0){_w_table_mincolnum=1;}
	 if(_w_table_maxcolnum == void 0){_w_table_maxcolnum=_w_table_mincolnum;}
	 if(_w_table_mincolnum>_w_table_maxcolnum){
	  return "";
	 }else{
	  var _w_table_splitrow=new Array();
	  for(iLoop=_w_table_mincolnum;iLoop<=_w_table_maxcolnum;iLoop++){
	   _w_table_onerowspan(iLoop);
	  }
	 }
	 
	 function _w_table_onerowspan(_w_table_colnum){
	  _w_table_firstrow = 0;//前一列合併區塊第一行
	  _w_table_SpanNum = 0;//合併單元格時的,單元格Span個數
	  _w_table_splitNum = 0;//陣列的_w_table_splitrow的當前元素下標
	  _w_table_Obj = $(_w_table_id + " tr td:nth-child(" + _w_table_colnum + ")");
	  _w_table_curcol_rownum = _w_table_Obj.length-1;//此列最後一行行數
	  if(_w_table_splitrow.length==0){_w_table_splitrow[0] = _w_table_curcol_rownum;}
	  _w_table_lastrow = _w_table_splitrow[0];//前一列合併區塊最後一行
	  var _w_table_firsttd;
	  var _w_table_currenttd;
	  var _w_table_curcol_splitrow=new Array();
	  _w_table_Obj.each(function(i){
	   if(i==_w_table_firstrow){
		_w_table_firsttd = $(this);
		_w_table_SpanNum = 1;
	   }else{
		_w_table_currenttd = $(this);
		if(_w_table_firsttd.text()==_w_table_currenttd.text()){
		 _w_table_SpanNum++;
		 _w_table_currenttd.hide(); //remove();
		 _w_table_firsttd.attr("rowSpan",_w_table_SpanNum); 
		}else{
		 _w_table_firsttd = $(this);
		 _w_table_SpanNum = 1;
		 setTableRow(i-1);
		}
		if(i==_w_table_lastrow){setTableRow(i);}
	   }
	   function setTableRow(_splitrownum){
		if(_w_table_lastrow<=_splitrownum&&_w_table_splitNum++<_w_table_splitrow.length){
		 //_w_table_firstrow=_w_table_lastrow+1;
		 _w_table_lastrow=_w_table_splitrow[_w_table_splitNum];
		}
		_w_table_curcol_splitrow[_w_table_curcol_splitrow.length]=_splitrownum;
		if(i<_w_table_curcol_rownum){_w_table_firstrow=_splitrownum+1;}
	   }
	  });
	  _w_table_splitrow=_w_table_curcol_splitrow;
	 }
}

  $(function() {
		//要合併哪些列	
		var arr = [0, 1, 2,3];
		_w_table_lefttitle_rowspan("#table2",1,4);//1和4分別代表開始列和結束列,包含關係,都為空的話預設只合並第一列
    });

方法2(在所有方法的基礎上進行改進!良心推薦此方法,你會愛上我的!):

    $(function() {
		//要合併哪些列(合併多列,需要將待處理的列從大到小排列)	
		var arr =[4,3,2,1,0];
		mergeRowCell("table2",1,0,arr);
    });
	
	
	/*
		mergeRowCell("tableId", 1, 0, 1);
		Para1:tableId,table表格的id
		Para2:1,開始行的索引值
		Para3:0,結束行的索引值
		Para4:1,需要處理的列的索引值(這是一個數組,注意數組裡列的順序)	
	*/
	function  mergeRowCell(tableId,startRow,endRow,arr){
		for(var i =0; i<arr.length; i++){
			MergeTableCell(tableId,startRow,endRow,arr[i]);
		}	
	}
	
	/*
		MergeTableCell("tableId", 1, 0, 1);
		Para1:tableId,table表格的id
		Para2:1,開始行的索引值
		Para3:0,結束行的索引值
		Para4:1,需要處理的列的索引值	
	*/
		function MergeTableCell(tableId, startRow, endRow, col) {
			var tb = document.getElementById(tableId);
			//設定為0時,檢索所有行
			if (endRow == 0) {
				endRow = tb.rows.length - 1;
			}
			//指定資料行索引大於表格行數
			if (endRow >= tb.rows.length) {
				return;
			}
			//檢測指定的列索引是否超出表格列數
			if (col >= tb.rows[0].cells.length) {
				return;
			}
			//迴圈需要判斷的資料行
			for (var i = startRow; i < endRow; i++) {
				//如果當前行與下一行資料值相同,則進行前面列的判斷
				if (tb.rows[startRow].cells[col].innerHTML == tb.rows[i + 1].cells[col].innerHTML) {
					var Same = true;
					//迴圈跟前面的所有的同級資料行進行判斷
					for (var j = col; j > 0; j--) {
						if (tb.rows[startRow].cells[j - 1].innerHTML != tb.rows[i + 1].cells[j - 1].innerHTML) {
							Same = false;
							break;
						}
					}
					//如果前面的同級資料行的值均相同,則進行單元格的合併
					if (true == Same) {
						//如果相同則刪除下一行的第0列單元格  
						tb.rows[i + 1].cells[col].style.display = 'none';
						//更新rowSpan屬性  
						tb.rows[startRow].cells[col].rowSpan = (tb.rows[startRow].cells[col].rowSpan | 0) + 1;
					}
					else {
						//增加起始行  
						startRow = i + 1;
					}
				}
				else {
					//增加起始行  
					startRow = i + 1;
				}
			}
		}

純手工的新鮮出爐程式碼,全文程式碼如下(友情提示記得匯入jquery包哦):

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        td{
            border:1px solid red;
        }
    </style>
	<script src="jquery.min.js"></script>
	<script>
    jQuery.fn.rowspan = function(colIdx) { //封裝的一個JQuery小外掛
        return this.each(function(){
            var that;
            $('tr', this).each(function(row) {
                $('td:eq('+colIdx+')', this).filter(':visible').each(function(col) {
                    if (that!=null && $(this).html() == $(that).html()) {
                        rowspan = $(that).attr("rowSpan");
                        if (rowspan == undefined) {
                            $(that).attr("rowSpan",1);
                            rowspan = $(that).attr("rowSpan"); }
                        rowspan = Number(rowspan)+1;
                        $(that).attr("rowSpan",rowspan);
                        $(this).hide();
                    } else {
                        that = this;
                    }
                });
            });
        });
    }
	
	//tableId要合併的表的Id
	//arr指定要合併列的
	function  mergeRowCell(tableId,arr){
		for(var i =0; i<arr.length; i++){
			$("#"+tableId).rowspan(arr[i]);//傳入的引數是對應的列數從0開始
		}	
	}
	
    $(function() {
		//要合併哪些列	
		var arr =[0,1,2,3,4];
		//mergeRowCell("table2",arr);		
		//table_rowspan("#table2","1,2,3,4");
		//_w_table_lefttitle_rowspan("#table2",1,6);
		//formatTable('3,2,1,0',"table2"); //要合併的列數  需要將待處理的列從大到小排列
		var arr2 =[4,3,2,1,0];//要合併哪些列(合併多列,需要將待處理的列從大到小排列)	
		mergeRowCellNew("table2",1,0,arr2);
    });
	
	/*
		mergeRowCell("tableId", 1, 0, 1);
		Para1:tableId,table表格的id
		Para2:1,開始行的索引值
		Para3:0,結束行的索引值
		Para4:1,需要處理的列的索引值(這是一個數組,注意數組裡列的順序)	
	*/
	function  mergeRowCellNew(tableId,startRow,endRow,arr){
		for(var i =0; i<arr.length; i++){
			MergeTableCell(tableId,startRow,endRow,arr[i]);
		}	
	}
	
	/*
		MergeTableCell("tableId", 1, 0, 1);
		Para1:tableId,table表格的id
		Para2:1,開始行的索引值
		Para3:0,結束行的索引值
		Para4:1,需要處理的列的索引值	
	*/
		function MergeTableCell(tableId, startRow, endRow, col) {
			var tb = document.getElementById(tableId);
			//設定為0時,檢索所有行
			if (endRow == 0) {
				endRow = tb.rows.length - 1;
			}
			//指定資料行索引大於表格行數
			if (endRow >= tb.rows.length) {
				return;
			}
			//檢測指定的列索引是否超出表格列數
			if (col >= tb.rows[0].cells.length) {
				return;
			}
			//迴圈需要判斷的資料行
			for (var i = startRow; i < endRow; i++) {
				//如果當前行與下一行資料值相同,則進行前面列的判斷
				if (tb.rows[startRow].cells[col].innerHTML == tb.rows[i + 1].cells[col].innerHTML) {
					var Same = true;
					//迴圈跟前面的所有的同級資料行進行判斷
					for (var j = col; j > 0; j--) {
						if (tb.rows[startRow].cells[j - 1].innerHTML != tb.rows[i + 1].cells[j - 1].innerHTML) {
							Same = false;
							break;
						}
					}
					//如果前面的同級資料行的值均相同,則進行單元格的合併
					if (true == Same) {
						//如果相同則刪除下一行的第0列單元格  
						tb.rows[i + 1].cells[col].style.display = 'none';
						//更新rowSpan屬性  
						tb.rows[startRow].cells[col].rowSpan = (tb.rows[startRow].cells[col].rowSpan | 0) + 1;
					}
					else {
						//增加起始行  
						startRow = i + 1;
					}
				}
				else {
					//增加起始行  
					startRow = i + 1;
				}
			}
		}
                
	 //arr  要合併的列數    tableid要合併的table的ID
	function formatTable(arr,tableid){
		var array=new Array();
		array=arr.split(",");
		for(var k=0;k<array.length;k++){
		var jqtid="#"+tableid;
		var $table=$(jqtid);  
			var tagStr="";  
			var name="";  
			$table.find("tr:gt(0)").each(function(i){  
				var $tr=$(this);  
				var $td=$tr.children("td:eq("+array[k]+")");  
				var tdname=$td.text();
				if(name==tdname){  
					//表示相同名字  
					$td.remove();  
				}else{  
					//  
					tagStr=tagStr+(i+1)+",";  
				}  
				name=tdname;  
			});  
			//對標記字串進行分割      
			var strs= new Array();  
			strs=tagStr.substring(0,tagStr.length-1).split(",");  
			var count=$table.find("tr:gt(0)").length+1;  
			for(i=0;i<strs.length;i++){  
				var s="tr:eq("+strs[i]+")"  
				if(i<strs.length-1){  
					//得到要合併的行數  
					$table.find(s).children("td:eq("+array[k]+")").attr("rowspan",(strs[i+1]-strs[i]));      
				}else{  
					$table.find(s).children("td:eq("+array[k]+")").attr("rowspan",(count-strs[i]));  
				}  
			}
		}
	}
	
		
		/**
		* @ function:合併指定表格列(表格id為table_id)指定列(列數為table_colnum)的相同文字的相鄰單元格
		* @ param:table_id 為需要進行合併單元格的表格的id。如在HTMl中指定表格 id="data" ,此引數應為 #data 
		* @ param:arr 為需要合併單元格的所在列。為數字,從最左邊第一列為1開始算起。
		*/
		function table_rowspan(table_id, arr) {
			var array=new Array();
			array=arr.split(",");
			for(var k=0;k<array.length;k++){
					table_firsttd = "";
					table_currenttd = "";
					table_SpanNum = 0;
					table_Obj = $(table_id + " tr td:nth-child(" + array[k] + ")");
					
					table_Obj.each(function (i) {
						if (i == 0) {
							table_firsttd = $(this);
							table_SpanNum = 1;
						} else {
							table_currenttd = $(this);
							if (table_firsttd.text() == table_currenttd.text()) { //這邊注意不是val()屬性,而是text()屬性
								//td內容為空的不合並
								if(table_firsttd.text() !=""){
									table_SpanNum++;
									table_currenttd.hide(); //remove();
									table_firsttd.attr("rowSpan", table_SpanNum);
								}
							} else {
								table_firsttd = $(this);
								table_SpanNum = 1;
							}
						}
					});
				}
		}
	
	
	
//函式說明:合併指定表格(表格id為_w_table_id)指定列(行數大於_w_table_mincolnum 小於_w_table_maxcolnum)相同列中的相同文字的相鄰單元格
//          多於一列時,後一列的單元格合併範圍不能超過前一列的合併範圍。避免出現交錯。
//引數說明:_w_table_id 為需要進行合併單元格的表格id。如在HTMl中指定表格 id="data" ,此引數應為 #data 
//引數說明:_w_table_mincolnum 為需要進行比較合併的起始列數。為數字,則從最左邊第一行為1開始算起。
//          此引數可以為空,為空則第一列為起始列。
//          需要注意,如果第一列為序號列,則需要排除此列。
//引數說明:_w_table_maxcolnum 為需要進行比較合併的最大列數,列數大於這個數值的單元格將不進行比較合併。
//          為數字,從最左邊第一列為1開始算起。
//          此引數可以為空,為空則同_w_table_mincolnum。
function _w_table_lefttitle_rowspan(_w_table_id,_w_table_mincolnum,_w_table_maxcolnum){   
	 if(_w_table_mincolnum == void 0){_w_table_mincolnum=1;}
	 if(_w_table_maxcolnum == void 0){_w_table_maxcolnum=_w_table_mincolnum;}
	 if(_w_table_mincolnum>_w_table_maxcolnum){
	  return "";
	 }else{
	  var _w_table_splitrow=new Array();
	  for(iLoop=_w_table_mincolnum;iLoop<=_w_table_maxcolnum;iLoop++){
	   _w_table_onerowspan(iLoop);
	  }
	 }
	 
	 function _w_table_onerowspan(_w_table_colnum){
	  _w_table_firstrow = 0;//前一列合併區塊第一行
	  _w_table_SpanNum = 0;//合併單元格時的,單元格Span個數
	  _w_table_splitNum = 0;//陣列的_w_table_splitrow的當前元素下標
	  _w_table_Obj = $(_w_table_id + " tr td:nth-child(" + _w_table_colnum + ")");
	  _w_table_curcol_rownum = _w_table_Obj.length-1;//此列最後一行行數
	  if(_w_table_splitrow.length==0){_w_table_splitrow[0] = _w_table_curcol_rownum;}
	  _w_table_lastrow = _w_table_splitrow[0];//前一列合併區塊最後一行
	  var _w_table_firsttd;
	  var _w_table_currenttd;
	  var _w_table_curcol_splitrow=new Array();
	  _w_table_Obj.each(function(i){
	   if(i==_w_table_firstrow){
		_w_table_firsttd = $(this);
		_w_table_SpanNum = 1;
	   }else{
		_w_table_currenttd = $(this);
		if(_w_table_firsttd.text()==_w_table_currenttd.text()){
		 _w_table_SpanNum++;
		 _w_table_currenttd.hide(); //remove();
		 _w_table_firsttd.attr("rowSpan",_w_table_SpanNum); 
		}else{
		 _w_table_firsttd = $(this);
		 _w_table_SpanNum = 1;
		 setTableRow(i-1);
		}
		if(i==_w_table_lastrow){setTableRow(i);}
	   }
	   function setTableRow(_splitrownum){
		if(_w_table_lastrow<=_splitrownum&&_w_table_splitNum++<_w_table_splitrow.length){
		 //_w_table_firstrow=_w_table_lastrow+1;
		 _w_table_lastrow=_w_table_splitrow[_w_table_splitNum];
		}
		_w_table_curcol_splitrow[_w_table_curcol_splitrow.length]=_splitrownum;
		if(i<_w_table_curcol_rownum){_w_table_firstrow=_splitrownum+1;}
	   }
	  });
	  _w_table_splitrow=_w_table_curcol_splitrow;
	 }
}

</script>
</head>
<body>
<table class="table mbn tc-med-1 tc-bold-last tc-fs13-last" id="table1">
  <thead>
    <tr>
        <th>省份</th>
        <th>市級</th>
        <th>商品程式碼</th>
        <th>商品名稱</th>
        <th>數量</th>
    </tr>
    </thead>
    <tbody>
    <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>20</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>30</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00027</td>
        <td>白花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>廣州</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>10</td>
    </tr> 
	<tr>
        <td>廣東</td>
        <td>廣州</td>
        <td>00027</td>
        <td>白花油</td>
        <td>10</td>
    </tr>
	<tr>
        <td>廣東</td>
        <td>廣州</td>
        <td>00027</td>
        <td>白花油</td>
        <td>30</td>
    </tr>
    <tr>
        <td>廣東</td>
        <td>河源</td>
        <td>00027</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>河源</td>
        <td>00027</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>河源</td>
        <td>00027</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>河源</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
    </tbody>
</table>

<table class="table mbn tc-med-1 tc-bold-last tc-fs13-last" id="table2">
  <thead>
    <tr>
        <th>省份</th>
        <th>市級</th>
        <th>商品程式碼</th>
        <th>商品名稱</th>
        <th>數量</th>
    </tr>
    </thead>
    <tbody>
    <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>20</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>30</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>深圳</td>
        <td>00027</td>
        <td>白花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>廣州</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>10</td>
    </tr> 
	<tr>
        <td>廣東</td>
        <td>廣州</td>
        <td>00027</td>
        <td>白花油</td>
        <td>10</td>
    </tr>
	<tr>
        <td>廣東</td>
        <td>廣州</td>
        <td>00027</td>
        <td>白花油</td>
        <td>30</td>
    </tr>
    <tr>
        <td>廣東</td>
        <td>河源</td>
        <td>00027</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>河源</td>
        <td>00027</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>河源</td>
        <td>00027</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
	 <tr>
        <td>廣東</td>
        <td>河源</td>
        <td>00028</td>
        <td>紅花油</td>
        <td>10</td>
    </tr>
    </tbody>
</table>
</body>
</html>