function add(one, two, three) {
db.transaction(function (tx) {
tx.executeSql('INSERT INTO results (one, two, three) VALUES (?,?,?)', [one, two, three]);
}), function() {
console.log('add transaction ok');
});
}
$('#add').click(function() {
$("tr.row").each(function() {
var one = $(this).find("input.one").val();
var two = $(this).find("input.two").val();
var three = $(this).find("input.three").val();
add(one, two, three);
});
alert("Done");
});
嗨,我試圖點擊一個按鈕,它會在表的每一行中找到輸入值,並將這些值插入到數據庫中。錶行數量有時可能會有所不同,也許3其他時間可能是10.等待每個包含數據庫更新然後重定向
我已經使用jquery .each函數來執行此調用異步函數。整個過程起作用。我現在想要做的是當.each()函數完成alert()時。在代碼原樣的情況下,我首先收到警報,然後控制檯記錄事務是否正常,但我希望最後得到警報。
而不是理想的警報,我想直接到另一個頁面,但我不能如果交易不完成第一。
我看了下面的解決方案可用在這個鏈接https://salesforce.stackexchange.com/questions/12424/wait-for-each-contained-async-calls-to-complete-before-redirect。實施這個警報是馬上進行,交易通話甚至沒有開始。
哎,我正在做的PhoneGap移動應用程序,數據庫是設備,其中應用程序使用本地存儲。 編輯:即時嘗試使每個完成後的警報,你的解決方案是在每個? – JMa
如果數據庫對設備是本地的,那麼通過這種方式這將起作用。我不知道你的應用程序是什麼或做什麼,所以我不能確定地說這種方法是否是一個好主意。 – Brian