Synchronized SELECT to web sql
Synchronized SELECT to web sql
我需要执行SELECT语句到我的web sql表,并根据响应使用结果或使AJAX调用获得结果。
有可能make synchronized ?
我有这样的函数:
getFile : function( fileName ) {
var me = this;
me.db.transaction( function( tx ) {
tx.executeSql( "SELECT * FROM content WHERE fileName = '" + fileName + "'", [ ], me.onSuccess, me.onError );
} );
// somehow return results as empty array or array with object
// I know results need to be transformed
},
和后面的代码想做这样的事情:
var r = getFile( name );
if ( r.length > 0 ) {
// use it
}
else {
// make AJAX call and store it
}
最简单的方法是创建一个函数,其中包含您希望在执行请求后执行的代码,并将该函数作为getfile函数的参数传递:
getFile : function( fileName, success ) {
var me = this;
me.db.transaction( function( tx ) {
tx.executeSql( "SELECT * FROM content WHERE fileName = '" + fileName + "'", [ ], me.onSuccess, me.onError );
},
success
);
// somehow return results as empty array or array with object
// I know results need to be transformed
});
var r = getFile(
name,
function() {
var r = getFile( name );
if ( r.length > 0 ) {
// use it
}
else {
// make AJAX call and store it
}
}
);
否则,最好的执行方法是使用Promises来解决异步问题,但你必须使用JQuery这样的库。http://joseoncode.com/2011/09/26/a-walkthrough-jquery-deferred-and-promise/
相关文章:
- 从 Web SQL 数据库检索音频并使用 Web 音频 API 播放
- 外键的HTML5 Web SQL值
- 具有Web SQL数据库的客户端存储
- 如何使用函数从Web SQL数据库中检索值
- Web SQL事务在javascript函数中未正确执行
- SQL语句是通过PhoneGap'按顺序执行的吗;的Web SQL数据库
- 如何在Web SQL数据库中逐行插入文本文件
- 如何在 Web sql 中显示事务成功警报
- Web SQL 将数据插入到多行中
- 无法在 Web SQL 数据库中创建新表
- Web sql 仅适用于调试
- Android 4.0.3 Web 浏览器是否支持 Web SQL 数据库?
- Web SQL 数据库 - 执行 asyc 调用并继续
- Web SQL Grow Database for iOS
- Web Sql 选择语句无法提取第三列
- JQuery Mobile:如何在查询 Web SQL 时显示消息
- 在HTML 5 / Javascript中批量插入到客户端数据库(WEB SQL)
- 如何在node-webkit应用程序中连接Web sql
- JavaScript Web SQL回调插入(如果不存在)
- 构建连接到SQL server的web应用程序的步骤