0
嗨我創建了一個Indexeddb數據庫,但是在輸入數據時遇到了麻煩。 數據庫:不能把數據放到使用Firefox的indexeddb數據庫中
var request = indexedDB.open("BCDB");
request.onupgradeneeded = function() {
var db = request.result;
var store = db.createObjectStore("psf", { autoIncrement: true });
var psTag = store.createIndex("ps_tag", "psTag");
var psNameIndex = store.createIndex("ps_name", "psName");
var psResultIndex = store.createIndex("ps_result", "psResult");
var psDateIndex = store.createIndex("ps_date", "psDate");
};
request.onsuccess = function() {
db = request.result;
};
我可以看到數據庫在Firefox的「存儲」窗口創建,但是當我試圖輸入的東西到它,它只是沒有工作。
var tx = db.transaction("psf", "readwrite");
var store = tx.objectStore("psf");
var request = store.put({
psName: "ABC",
psTag: "XYZ",
psDate: "DEF",
psResult: "QWE"
});
request.onsuccess = function(e) {
alert('done');
};
request.onerror = function(e) {
alert(e.value);
};
這個問題只發生在Firefox上。我可以在Chrome上成功輸入。我孤立並找出它是put()失敗,但在Chrome上可以。
那麼因爲自從我學習了IDB(這是昨天),每個人似乎都使用_put()_而不是_add()_。 關於該功能,它也不起作用。我使用了Google Chrome上完全相同的功能,但沒有任何效果。 – jcp0908
好吧,不是問題,我們都在這裏學習。現在記住你應該使用'add()'來插入,'put()'來更新。檢查我的編輯,我給你一個樣本POC。 – hagrawal
感謝您的幫助。我也使用了最新版本。但它也不起作用。你的代碼在谷歌瀏覽器上完美工作 http://i.imgur.com/0X3C6Ij.jpg – jcp0908