IndexedDB API删除对象的问题

时间:2018-09-02 21:37:42

标签: javascript html5 indexeddb

我对所有这些编程都是陌生的,并且我正在使用IndexedDB API进行了很长时间的分析,并且在我面前找不到错误,感谢您的帮助。问题是以下按钮消除了每个对象(在这里被调用,但或多或​​少是一条记录)不起作用,我已经做了一些测试,并且消除函数似乎没有任何作用,但是这里没有删除数据离开代码。对不起,这篇文章是由谷歌翻译的。

 var bd;
function iniciar(){

    zonadatos=document.getElementById("zonadatos");

    boton=document.getElementById("grabar");


    boton.addEventListener("click",agragarobjeto, false);

    var solicitud=indexedDB.open("mibase6");

    solicitud.onsuccess=function(e){

        bd=e.target.result;

    eliminartodo(); 

    }

    solicitud.onupgradeneeded=function(e){

                bd=e.target.result;
        bd.createObjectStore("gente", {keyPath: "iden", autoIncrement:true});

    }   


}

function agragarobjeto(){

    var clave=document.getElementById("clave").value;

    var titulo=document.getElementById("texto").value;

    var Fecha=document.getElementById("fecha").value;

    var transaccion=bd.transaction(["gente"], "readwrite");

    var almacen=transaccion.objectStore("gente");

    var agregar=almacen.add({clave: clave, titulo: titulo, Fecha: Fecha});

    agregar.addEventListener("success", mostrar, false);


    document.getElementById("clave").value=""

    document.getElementById("texto").value=""

    document.getElementById("fecha").value=""
}

function mostrar(){

    zonadatos.innerHTML="";

    var transaccion=bd.transaction(["gente"],"readonly");

    var almacen=transaccion.objectStore("gente");

    var cursor=almacen.openCursor();

    cursor.addEventListener("success", mostrarDatos, false);    


}

function mostrarDatos(e){

    var cursor=e.target.result;

    if(cursor){

        zonadatos.innerHTML+='<p> <input type="number" style="width:60px" name="codigo" required="" id="codigo"  value="' + cursor.value.clave + '" disabled> <input type="number" name="cfija" style="width:60px" required="" id="cfija" value="' + cursor.value.titulo + '" disabled> <input type="number" name="cfija" style="width:60px" required="" id="cvariable" value="' + cursor.value.Fecha + '" disabled> <button style="width:60px" type="button" onclick="eliminar(\'' +cursor.value.iden+ '\')">Eliminar</button>  </p>' ;

        cursor.continue();

        hola.innerHTML+="hola";
    }



}

function eliminar(valor){
    var transaccion=bd.transaction(["gente"], "readwrite");
    var almacen=transaccion.objectStore("gente");
    var solicitud=almacen.delete(valor);
    solicitud.addEventListener('success', mostrar, false);
    solicitud.addEventListener('error', errores, false);
    hola.innerHTML+=valor;
}

function eliminartodo(){
    var transaccion=bd.transaction(["gente"], "readwrite");
    var almacen=transaccion.objectStore("gente");
    var solicitud=almacen.clear();

}

function errores(){
alert("Error:");
}


window.addEventListener("load", iniciar, false);

0 个答案:

没有答案