jexcel更新表后我没有得到新值

Posted

技术标签:

【中文标题】jexcel更新表后我没有得到新值【英文标题】:after jexcel update table i am not getting new values 【发布时间】:2020-04-22 08:31:14 【问题描述】:

我无法获取新的 jexcel 数据。 当我单击保存测试列数据不起作用时。我必须得到总和 [ [ “本田”, "2", "2", “” ] ] 这是我的代码

    var datagrid = jexcel(document.getElementById('my-spreadsheet'), 
    columns: [
        title: 'Model', width: 300,
        title: 'Price', type: 'numeric', width: 80,
        title: 'Tax', type: 'numeric', width: 100,
        title: 'Test', type: 'numeric', width: 100
    ],
    data: [
        ['Honda']
    ],
    updateTable: function (instance, cell, col, row, val, label, cellName) 
        if (col == 1) 
            Price = val;
        
        if (col == 2) 
            Tax = val;
        
        if (col == 3) 
            totals = Number(Price) + Number(Tax);
            $(cell).text(totals);
        
    
);
function save() 
    var data = datagrid.getJson();
    console.log(data, 'data');

我知道有一个公式像 =B1+C1 ... 但是我已经手动输入了网格中的所有行。

实际上它在 jexcel 1.5 版本中按预期工作

【问题讨论】:

什么不起作用? 【参考方案1】:

您正在更改单元格的 innerhtml 而不更改数据源对象。您可以使用以下代码解决此问题:

   var datagrid = jexcel(document.getElementById('my-spreadsheet'), 
    columns: [
        title: 'Model', width: 300,
        title: 'Price', type: 'numeric', width: 80,
        title: 'Tax', type: 'numeric', width: 100,
        title: 'Test', type: 'numeric', width: 100
    ],
    data: [
        ['Honda']
    ],
    updateTable: function (instance, cell, col, row, val, label, cellName) 
        if (col == 1) 
            Price = val;
        
        if (col == 2) 
            Tax = val;
        
        if (col == 3) 
            totals = Number(Price) + Number(Tax);
            // Update labels
            $(cell).text(totals);
            // Update data source
            instance.jexcel.options.data[y][x] = totals;
        
    
);

【讨论】:

以上是关于jexcel更新表后我没有得到新值的主要内容,如果未能解决你的问题,请参考以下文章

获取异步函数的 NULL 值(使用 await 之后)然后更新为新值

单个SQL查询,用于更新多个字段值

我登录到 phpmyadmin。登录后我得到错误。

获取实际输出JavaScript后我得到了未定义的[重复]

如何使用 C# 程序中的新值快速更新表中的所有行

编译后无法覆盖“用户”模型。解决后我得到“用户”未定义