0

この電話ギャップ トランザクションの成功コールバックに追加のパラメーターを渡すにはどうすればよいですか? コードは次のとおりです。

 db.transaction(function (transaction) {
    var sql = 'SELECT SYNC_DATE_TIME FROM SYNC_HISTORY WHERE SYNC_NAME=?'
    transaction.executeSql(sql, [syncName],getSycDateQuerySuccessCB, errorCB);
}, getLastSyncDateErrorCB, getLastSyncDateSuccessCB)

syncNamevar をに渡したかったのgetSycDateQuerySuccessCBです。この関数には、コールバック関数の変数がパラメータとして入ります。

4

1 に答える 1

1

フレームワークがコールバック関数に追加の変数を提供しない場合、それらを関数に渡すことはできません。あなたの最善の策は、他のコールバックを呼び出すクロージャを渡すことです:

db.transaction(function (transaction) 
    {
        var sql = 'SELECT SYNC_DATE_TIME FROM SYNC_HISTORY WHERE SYNC_NAME=?'
        transaction.executeSql(
                sql,
                [syncName],
                function(resultSet) { getSycDateQuerySuccessCB(resultSet, syncName); }, 
                errorCB
        );
    }, getLastSyncDateErrorCB, getLastSyncDateSuccessCB
);
于 2013-07-03T11:25:16.430 に答える