Handsontable保存公式值

我希望将handontable集成到我的网站,但是有一个问题,当我试图保存由RuleJS(公式支持)创建的数据时,脚本给我一个像(= $ A1 * $ B1)的公式。 我试图得到简单数学的结果乘以价格和货币。 如何保存表值,而不是来自sourse?

workig代码在jsfiddle: http : //jsfiddle.net/zetwin/qhjuuk5j/4/

document.addEventListener("DOMContentLoaded", function() { var people = [ {base_price :'99', price:'13', unit:'=A1*B1'}, {base_price :'89.99', price:'13.43', unit:'=A2*B2'} ], example1 = document.getElementById('example1'), settings1; settings1 = { data: people, formulas: true, rowHeaders: true, colHeaders: true, colHeaders: [ 'Price', 'Currency', 'USD'], columns: [ {data: 'base_price'}, {data: 'price'}, {data: 'unit'} ] }; var hot = new Handsontable(example1, settings1); $('.push').click(function () { data = hot.getData(); console.log(data); //$('.result').text(data); }); }); 

谢谢!

对象是属性Handsontable plugin.matrix.data – 单元格列表,根据表中的公式计算。 每个单元格都有一个属性值 – 这是显示的结果。 要获取所有数据,必须使用以下函数:Handsontable.plugin.helper.cellValue或Handsontable.plugin.helper.cellRangeValue。

例如你的jsfiddle:

从单元格的右上角获取:

 data = hot.plugin.helper.cellValue ('C1'); console.log (data); 

48168.89000000001获取所有单元格的值(列表):

 data = hot.plugin.helper.cellRangeValue ('A1', 'C2'); console.log (data); 

数组[6]:0:625.57 1:656.95 2:77 3:77 4:48168.89000000001 5:50585.15长度:6

我认为这是比cellRangeValue更好的方法。 但在此基础上,我们可以写一些更舒服的东西。 看到。 Handsontable.plugin.helper.cellRangeValue