この例を実装しようとしています。
特定のアイテムを削除しようとするまで、すべてが正常に機能します。
これを使用して:
request.onupgradeneeded = function(event) {
console.log("upgrade", event);
db = event.target.result;
console.log("db", db);
if (!db.objectStoreNames.contains("chatBot")) {
var objectStore = db.createObjectStore("chatBot", {keyPath: "timeStamp", autoIncrement: true});
}
};
および削除の設定:
btnDelete.addEventListener("click", function() {
var id, transaction, objectStore, request;
id = document.getElementById("txtID").value;
console.log("id", typeof id);
transaction = db.transaction("people", "readwrite");
objectStore = transaction.objectStore("people");
request = objectStore.delete(id);
request.onsuccess = function(evt) {
console.log("deleted content");
};
}, false);
indexedDB にアイテムを追加しても問題はありませんが、何らかの理由でアイテムを削除できない理由がわかりません。
はid
文字列でありobjectStore.delete(id)
、正しい実装です。
ここに例のペーストビンがあります
Firefox 18 の使用