JavaScript - ordenar segun la fecha indexedDB

 
Vista:
sin imagen de perfil
Val: 59
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

ordenar segun la fecha indexedDB

Publicado por Jean (22 intervenciones) el 26/03/2021 12:40:27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>IndexedDB: Almacenamiento local con HTML5</title>
        <script type="text/javascript">
            var indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
 
            var dataBase = null;
 
            function startDB() {
 
                dataBase = indexedDB.open("movies", 1);
 
                dataBase.onupgradeneeded = function (e) {
 
                    active = dataBase.result;
 
                    object = active.createObjectStore("peliculas", { keyPath : 'id', autoIncrement : true });
                    object.createIndex('by_nombre', 'nombre', { unique : false });
                    object.createIndex('by_numero', 'numero', { unique : true });
                };
 
                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(["peliculas"], "readwrite");
                var object = data.objectStore("peliculas");
 
                var request = object.put({
                    dni: document.querySelector("#numero").value,
                    name: document.querySelector("#nombre").value,
                    surname: document.querySelector("#fecha").value
                });
 
                request.onerror = function (e) {
                    alert(request.error.name + '\n\n' + request.error.message);
                };
 
                data.oncomplete = function (e) {
                    document.querySelector("#numero").value = '';
                    document.querySelector("#nombre").value = '';
                    document.querySelector("#fecha").value = '';
                    alert('Objeto agregado correctamente');
                    mostrar()
                };
                function mostrar()
                {
 
                    var bd=dataBase.result;
                    var transaccion=bd.transaction(['peliculas']);
                    var almacen=transaccion.objectStore('peliculas');
                    var cursor=almacen.openCursor(IDBCursor.prev);
                    cursor.addEventListener('success', mostrarlista, false)
                }
                function mostrarlista()
                {
                    var resultado= dataBase.result
                    var data = active.transaction(["peliculas"], "readwrite");
                    var object = data.objectStore("peliculas");
                    cajadatos.innerHTML="<div>"+resultado.numero+" - "+resultado.nombre+" - "+resultado.fecha+"<div>"
 
                }
            }
 
        </script>
    </head>
    <body onload="startDB();">
        <input type="text" id="numero" placeholder="Introducir Id" />
        <input type="text" id="nombre" placeholder="Introducir nombre" />
        <input type="text" id="fecha" placeholder="Introducir fecha" />
        <button type="button" onclick="add();">Guardar</button>
        <section id="cajadatos">
            No hay datos
        </section>
    </body>
Hola, tengo que hacer que esta base de datos ordene se forma desendente seguna la fecha pero, los resultados me salen como indefinidos y no se como hacer que lo ordene segun la fecha.
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

ordenar segun la fecha indexedDB

Publicado por Vichito (1 intervención) el 02/08/2021 06:23:32
Interface Cursors (IDBCursor)

Esta interface provee valores de configuración para especificar el orden de los objetos seleccionados desde el Almacén de Objetos. Estos valores deben ser declarados como el segundo atributo del método openCursor(), como en openCursor(null, IDBCursor.PREV).

NEXT (siguiente). Esta constante determina un orden ascendente para los objetos apuntados por el cursor (este es el valor por defecto).
NEXT_NO_DUPLICATE (siguiente no duplicado). Esta constante determina un orden ascendente para los objetos apuntados por el cursor e ignora los duplicados.
PREV (anterior). Esta constante determina un orden descendente para los objetos apuntados por el cursor.
PREV_NO_DUPLICATE (anterior no duplicado). Esta constante determina un orden descendente para los objetos apuntados por el cursor e ignora los duplicados.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar