Ваш вопрос неясен, но я постараюсь ответить на него в меру своих возможностей.
если я проигнорирую приведенный вами пример и сосредоточусь на jExcel, мы сможем объединить ячейки, используя setMerge
и для этого нам необходимо знать:
- адрес первой ячейки
- номера выбранных строк
- номера выбранных столбцов
мы можем извлечь эту информацию из:
$("#spreadsheet").jexcel("getSelectedRows", true);
$("#spreadsheet").jexcel("getSelectedColumns", true);
теоретически это должно работать, но jExcel отменяет выбор ячеек, когда теряет фокус (ie, когда пользователь нажимает кнопку), поэтому я использовал обходной путь для сохранить выбор ячеек в объекте, а затем использовать этот объект для объединения ячеек.
HTML:
<div id="spreadsheet"></div>
<br>
<input id="myB" type="button" value="Merge Selected" />
Javascript:
var mySlection = {};
var options = {
minDimensions: [10, 10],
onselection: storeSelection
};
$(document).ready(function() {
var mySpreadsheet = $("#spreadsheet").jexcel(options);
$("#myB").click(function() {
//Merge Cells using the stored selection
$("#spreadsheet").jexcel("setMerge", mySlection.firstcell, mySlection.colspan, mySlection.rowspan)
/*
you may now store the following values to your MySQL
mySlection.firstcell
mySlection.colspan
mySlection.rowspan
*/
});
});
function storeSelection() {
var sRows = $("#spreadsheet").jexcel("getSelectedRows", true);
var sCols = $("#spreadsheet").jexcel("getSelectedColumns", true);
mySlection.firstcell = [sCols[0], sRows[0]];
mySlection.colspan = sCols.length;
mySlection.rowspan = sRows.length;
}
Требования: jQuery, jExcel и jSuites v3