Jquery WebSQL插入行两次?

Jquery WebSQL插入行两次?,jquery,sql,cordova,jquery-mobile,web-sql,Jquery,Sql,Cordova,Jquery Mobile,Web Sql,我有直截了当的问题 db.transaction(insertIDB, errorCB); function insertIDB(tx) { //do some task if else cases to get data var sql = 'INSERT INTO data (date, location, ...) VALUES (?, ?, ...)'; tx.executeSql(sql, [_date, _location, ...], successDB,

我有直截了当的问题

  db.transaction(insertIDB, errorCB);

  function insertIDB(tx) {
   //do some task if else cases to get data

  var sql = 'INSERT INTO data (date, location, ...) VALUES (?, ?, ...)';
  tx.executeSql(sql, [_date, _location, ...], successDB, errorDB);

  }

  function successDB(transaction, results)   {
    //navigate result page  
  }

  function errorDB(transaction, results)   {
    //print error  
  }

不知何故,它最终插入相同的数据两次。以前有人有过这个问题。我甚至在成功插入后导航之前尝试过设置超时。时间戳是相同的,可能只有毫秒的差异。任何修复此问题的想法都将不胜感激。

在insertDB方法的第一行上放置一些日志记录,并检查它是否记录了两次消息,或者如果它只记录了一次,则必须在其他位置放置另一个insert语句。

在insertDB方法的第一行上放置一些日志记录,并检查它是否记录了两次消息,或者,如果它只记录一次,那么您必须在其他地方有另一个insert语句。

如果代码将该行插入两次,那么它将被调用两次。一个
insert
(一行)不会插入多行,除非您有一个触发器执行非常不寻常的操作。好的,我已经检查了代码。我有表单提交和按钮点击事件,可能这是他们都调用的问题,我点击按钮并添加两次?不,看起来我禁用了此代码。还有什么可以调用函数两次呢?我听说有异步和同步websql操作。这会导致这个问题吗。在insert之前放一条审计语句,看看这个代码是否被调用了两次。您可能在其他地方调用了代码;或者这个函数可能被调用两次。如果代码插入行两次,那么它将被调用两次。一个
insert
(一行)不会插入多行,除非您有一个触发器执行非常不寻常的操作。好的,我已经检查了代码。我有表单提交和按钮点击事件,可能这是他们都调用的问题,我点击按钮并添加两次?不,看起来我禁用了此代码。还有什么可以调用函数两次呢?我听说有异步和同步websql操作。这会导致这个问题吗。在insert之前放一条审计语句,看看这个代码是否被调用了两次。您可能在其他地方调用了代码;或者该函数可能被调用两次。