0
我創建移動web應用程序使用html5和javascript.I m有兩個JavaScript文件。 AttributesDatabase.js和AttributeView.js.From AttributeView.js即時調用一個函數從AttributeDatabase.js執行一個選擇查詢。現在查詢結果應該去AtttributeView.js.But Websql事務是異步調用,這就是它沒有返回正確的結果。有什麼辦法來處理websql的結果。 如果有任何方法,請幫忙嗎?如何在html 5中處理websql的結果集?
編輯
AttributeView.js
var AttributeDAOObj = new AttributeDAO();
AttributeDAOObj.GetAttributeList();
alert(AttributeDAOObj.GetAttributeList()); //This alert is coming as undefined.
AttributeDAO.js
this.GetAttributeList = function() {
var baseDAOObj = new BaseDAO();
var query = "SELECT AttributeName FROM LOGS";
// this.Successcalbackfromsrc = this.myInstance.Successcalback;
var parm = { 'query': query, 'Successcalback': this.myInstance.Successcalback };
baseDAOObj.executeSql(parm);
}
//To Create database and execute sql queries.
function BaseDAO() {
this.myInstance = this;
//Creating database
this.GetMobileWebDB = function() {
if (dbName == null) {
var dbName = 'ABC';
}
var objMobileWebDB = window.openDatabase(dbName, "1.0", dbName, 5 * 1024 * 1024);
return objMobileWebDB;
}
//Executing queries and getting result
this.executeSql = function (query) {
var objMobileWebDB = this.myInstance.GetMobileWebDB();
objMobileWebDB.transaction(function (transaction) {
//In this transaction i m returning the result.The result value is coming.
transaction.executeSql(query, [], function (transaction, result) { return result; }, this.Errorclback);
});
}
}
如果您發佈了一些代碼,它將更容易回答您的問題 – jugg1es 2013-03-27 17:24:11
您不返回異步操作的結果,您在結果到達時調用回調。 – DCoder 2013-03-27 19:26:15