le gestionnaire d'événement onerror
de l'interface IDBRequest
capte l'événement error
, déclenché quand une requête renvoie une erreur.
Le gestionnaire d'événement reçoit l'événement error avec le type="error" en paramètre.
Note : This feature is available in Web Workers.
Syntaxe
request.onerror = function( event ) { ... };
Exemple
L'exemple suivant demande un titre d'enregistrement donné, onsuccess
obtient l'enregistrement associé au magasin d'objets
(mis à disposition en tant que objectStoreTitleRequest.result
), on met à jour une propriété de l'enregistrement, puis le sauve dans le magasin d'objets. En bas le gestionnaire d'événement onerror
affiche le code d'erreur si la requête
échoue. Pour un exemple de travail complet, voir notre To-do Notifications app (view example live).
var title = "Walk dog"; // Ouvrez une transaction comme d'habitude var objectStore = db.transaction(['toDoList'], "readwrite").objectStore('toDoList'); // Obtenez l'objet toDoList qui a ce titre var objectStoreTitleRequest = objectStore.get(title); objectStoreTitleRequest.onsuccess = function() { // Prenez l'objet de données renvoyé comme résultat var data = objectStoreTitleRequest.result; // Mettre à jour la valeur notified de l'objet à "yes" data.notified = "yes"; // Créer une autre requête qui insère le nouvelle élément dans la base de données var updateTitleRequest = objectStore.put(data); // Lorsque cette requête réussit, appelle de la fonction displayData() pour mettre à jour l'affichage updateTitleRequest.onsuccess = function() { displayData(); }; }; objectStoreTitleRequest.onerror = function() { // Si une erreur se produit à la demande, on l'affiche console.log("Il y a eu une erreur dans la récupération des données: " + objectStoreTitleRequest.error); };
Spécifications
Spécification | Statut | Commentaire |
---|---|---|
Indexed Database API La définition de 'onerror' dans cette spécification. |
Recommendation |
Compatibilité avec les navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Support basique | 23webkit 24 |
10 moz 16.0 (16.0) |
10, en partie | 15 | 7.1 |
Disponible dans workers | (Oui) | 37.0 (37.0) | ? | (Oui) | ? |
Fonctionnalité | Android | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support basique | 4.4 | 22.0 (22.0) | 1.0.1 | 10 | 22 | 8 |
Disponible dans workers | (Oui) | 37.0 (37.0) | (Oui) | ? | (Oui) | ? |
Voir aussi
- Using IndexedDB
- Error Event
- Starting transactions:
IDBDatabase
- Using transactions:
IDBTransaction
- Setting a range of keys:
IDBKeyRange
- Retrieving and making changes to your data:
IDBObjectStore
- Using cursors:
IDBCursor
- Reference example: To-do Notifications (view example live.)