我在這件事上打了我的頭,我會很樂意提供任何幫助。我需要在數據庫中存儲另一個頁面的上下文(字符串ID列表)。我打開一個包含藝術品列表的頁面,並將該頁面保存到數據庫中的這些artowrks標識符。當我點擊一件藝術作品時,我打開它的網頁,但是我可以訪問數據庫以瞭解上下文並參考下一個和上一個作品。Javascript html5數據庫循環中的數據庫事務問題
這是我的代碼檢索CONTEX:
updateContext = function() {
alert("updating context");
try {
mydb.transaction(
function(transaction) {
transaction.executeSql("select artworks.number from artworks, collections where collections.id = artworks.section_id and collections.short_name in ('cro', 'cra', 'crp', 'crm');", [], contextDataHandler, errorHandler);
});
} catch(e) {
alert(e.message);
}
}
的contextDatahandler功能,那麼在結果迭代,並再次填寫current_context表:
contextDataHandler = function(transaction, results) {
try {
mydb.transaction(
function(transaction) {
transaction.executeSql("drop table current_context;", [], nullDataHandler, errorHandler);
transaction.executeSql("create table current_context(id String);", [], nullDataHandler, errorHandler);
}
)
}
catch(e) {
alert(e.message);
}
var s = "";
for (var i=0; i < results.rows.length; i++) {
var item = results.rows.item(0);
s += item['number'] + " ";
mydb.transaction(
function(tx) {
tx.executeSql("insert into current_context(id) values (?);", [item['number']]);
}
)
}
alert(s);
}
的結果是,我得到的current_context表刪除,重新創建和填充,但所有行都填充了LAST藝術作品ID。查詢檢索藝術作品id工作,所以我認爲這是一個交易問題,但我不知道在哪裏。
感謝您的幫助
感謝您的信息 – 2010-03-15 00:08:38