1

SpreadJS を使用しており、オブジェクト (スプレッドシート) が変更されるたびにイベントをトリガーして、その中のすべてのデータがサーバーに送信されるようにする必要があります。

function (){
    var spread = $("#ss").wijspread("spread");
    var activeSheet = spread.getActiveSheet();

    activeSheet.bind($.wijmo.wijspread.Events.EditEnd, function (sender, args) {
        var dados = JSON.stringify(spread.toJSON());
        console.log(dados);
        $.ajax({
            // ...  
        });
    });
}

「dados」のデータには、最後に変更されたセルを除くスプレッドシートのすべてが含まれます。これを修正する方法は?

これをイベント ハンドラー内に含めようとしましたが、結果は同じです。

var spread = $("#ss").wijspread("spread");
4

3 に答える 3

0

ValueChangedイベントを使用する

var spread = $("#ss").wijspread("spread");
var activeSheet = spread.getActiveSheet();

activeSheet.bind($.wijmo.wijspread.Events.ValueChanged, function (sender, args) {
    console.log(JSON.stringify(spread.toJSON()));
});
于 2016-01-20T12:57:00.660 に答える
0

「ValueChange」またはその他のイベントを使用し、「arg」を使用して変更を取得できます。
例: arg.newValueはこのセルの最後の変更を取得し、arg{row, col}はセルの変更位置を取得します。これがあなたを助けることを願っています。
ここに SpreadJS のイベントがあります:
http://wijmo.com/docs/spreadjs/API/symbols/ $.wijmo.wijspread.Events.html

    activeSheet.bind($.wijmo.wijspread.Events.ValueChanged, function (e, arg) { 
        var r = arg.row;   
        var c = arg.col; 
        var v = arg.newValue;
        $.ajax({
        // ...
        });                                 
    });
于 2016-01-11T15:03:49.377 に答える