Web SQL 数据库 - 执行 asyc 调用并继续
Web SQL DataBase - Execute asyc call and continue
我正在尝试进行异步调用(SELECT 语句),允许我继续主线程,如以下代码所示(我需要执行序列:"A", 2, "B"):
function test(tx) {
// Drop Table
tx.executeSql('DROP TABLE IF EXISTS city');
// Create Table
tx.executeSql("CREATE TABLE IF NOT EXISTS city (id, name)");
// Insert 2 rows
tx.executeSql("INSERT INTO city (id, name) VALUES (1, 'Roma')");
tx.executeSql("INSERT INTO city (id, name) VALUES (2, 'Bari')");
alert("A");
tx.executeSql('SELECT * FROM city', [], function (tx, results)
{
alert(results.rows.length);
}, null);
alert('B');
}
但我得到,"A","B",2
如何实现执行序列"A"、2、"B"?
谢谢。保罗
这是websql API的一个主要问题。它固定在 IndexedDB API 中,因此规范定义了必须放置在事务上的所有请求必须按其放置顺序执行。WebSQL没有这个条件,因此它可以按任何顺序执行。
解决方法是使用请求成功回调。堆栈溢出中有一个线程,它通过示例解释了这个概念。
相关文章:
- Javascript渲染.如何编写Javascript;t在函数调用结束之前继续执行代码
- 如何从按钮后面的代码中调用javascript函数,点击并存储其输出,然后继续操作
- AJAX调用不起作用,因为它继续转到链接
- jQuery验证,在继续之前等待服务调用响应
- 事件侦听器调用函数后,代码的执行在哪里继续
- 等待多个 ipc 调用完成,然后再继续电子/冗余
- 有没有办法在浏览器中停止HTTP AJAX调用,以便另一个调用可以继续
- 等待 API 调用在 Javascript 中完成,然后再继续
- Angular2 可观察 - 等待多个函数调用,然后再继续
- 在继续Javascript之前,如何等待多个facebook图形api调用
- Web SQL 数据库 - 执行 asyc 调用并继续
- 在什么情况下浏览器拒绝继续调用 setInterval 回调
- 进行 ajax 调用,如果不是所需的结果,则提取一个值,然后继续重复,直到达到所需的结果
- 即使调用了clearInterval,interval也会继续激发
- 如何在AJAX调用后继续表单提交
- Ajax登录框没有't调用PHP文件以继续处理
- 如何让Javascript在继续之前等待异步调用
- 在函数调用中中断或继续循环
- 为什么重置 setInterval 它继续调用多个函数实例而不是一个
- 反应-按钮按下,继续调用函数