**已关闭。**此问题为not reproducible or was caused by typos。目前不接受答案。
这个问题是由一个打字错误或一个无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
去年关闭了。
Improve this question
我在一个登录/注册系统中工作,我必须取一些输入的值来注册它们,但是我遇到了一个问题。
错误为:未捕获的DOM异常:无法在'IDBDatabase'上执行'transaction':找不到其中一个指定的对象存放区。
并在此代码行中发生:“var数据=活动事务([“通常”],“读写”);“
有人能帮我吗?下面是我的代码:
var indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
var dataBase = null;
function startDB(){
dataBase = indexedDB.open("objectDb", 1);
dataBase.onupgradeneeded = function (e) {
var active = dataBase.result;
var objectDb = active.createObjectStore("usuarios", {keyPath: 'id', autoIncrement : true });
objectDb.createIndex('index_nombre','nombre', {unique : false});
objectDb.createIndex('index_user','usuario', {unique : true});
objectDb.createIndex('index_correo','email', {unique : true});
objectDb.createIndex('index_pass','pass', {unique : false});
};
dataBase.onsuccess = function (e) {
alert("Base de datos cargada correctamente");
};
dataBase.onerror = function (e) {
alert("Error cargando la base de datos");
};
}
function add() {
var active = dataBase.result;
var data = active.transaction(["usuarios"], "readwrite");
var objectDb = data.objectStore("usuarios");
var request = objectDb.put({
nombre: document.querySelector("#nombre").value,
usuario: document.querySelector("#usuario").value,
email: document.querySelector("#email").value,
pass: documento.querySelector("#pass").value,
});
request.onerror = function (e) {
alert(request.error.name + '\n\n' + request.error.message);
};
data.oncomplete = function (e) {
document.querySelector("#nombre").value = "";
document.querySelector("#usuario").value = "";
document.querySelector("#email").value = "";
document.querySelector("#pass").value = "";
alert("Objeto agregado correctamente");
};
}
这是我的第一个indexedDB项目,所以我很noob。
1条答案
按热度按时间yzckvree1#
我找到了答案,这是var objectDb中的一个错误,我把D放在小写字母中,它工作了。