handsontable 合並單元格


<!DOCTYPE html>
<html>
	<head>
		<title>handsontable demo</title>
		<meta charset="utf-8">
		<link rel="stylesheet" href="css/handsontable.full.css">
		<script src="js/jquery.js"></script>
		<script src="js/handsontable.full.js"></script>
	</head>
	<body>
		<div id="example"></div>

		<script>
			var data = [
				['2017-01', '北京', '冰箱', '3399', 530],
				['2017-01', '天津', '空調', '4299', 522],
				['2017-01', '上海', '洗衣機', '1299', 544],
				['2017-01', '廣州', '彩電', '4599', 562],
				['2017-01', '深圳', '熱水器', '1099', 430],
				['2017-02', '重慶', '筆記本電腦', '4999', 666],
				['2017-02', '廈門', '油煙機', '2899', 438],
				['2017-02', '青島', '飲水機', '899', 620],
				['2017-02', '大連', '手機', '1999', 500]
			];

			var hot = new Handsontable(document.getElementById('example'),{
				data: data,
				colHeaders: ['日期', '地點', '商品', '單價', '銷量'], // 使用自定義列頭
				rowHeaders: true,
				editor: false, // 禁用所有單元格編輯
				colWidths: 150, // 設置所有列寬為150像素
                contextMenu: false, // 禁用右鍵菜單
				mergeCells: [
					{row:0, col:0, rowspan:5, colspan:1},
					{row:5, col:0, rowspan:4, colspan:1}
				],
	            cell: [
	                {row: 0, col: 0, className: "htCenter htMiddle"}, // 設置下標為0,0的單元格樣式 水平居中、垂直居中
	                {row: 5, col: 0, className: "htCenter htMiddle"}
	            ]
			});
		</script>
	</body>
</html>

  

上面我們已經將右鍵菜單禁用掉,現在將使用js對容器插入行列,並初始化插入列的數據

 

再結合altersetDataAtCell方法我們將在下面做一個簡單的例子:

// 在索引9行之前插入2個空行
hot.alter('insert_row', 9, 2);
// 對2個空行進行填充數據
hot.setDataAtCell([
	[9, 0, '2017-03'],
	[9, 1, '武漢'],
	[9, 2, '路由器'],
	[9, 3, 149],
	[9, 4, 692],
	[10, 0, '2017-03'],
	[10, 1, '杭州'],
	[10, 2, '移動電源'],
	[10, 3, 99],
	[10, 4, 785]
]);
hot.alter('remove_row', 6); // 移除索引為6的行

  

由於我們剛開始設置了合並列,現在刪除第6行后,后面幾行數據將會追加上去,所以新添加的一行(日期列)會被合並掉

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM