Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

IDBTransaction: error event

BaselineWidely available

Theerror event is fired onIDBTransaction when a request returns an error and the event bubbles up to the transaction object.

Note:To handle all the ways a transaction can fail, consider listening for theabort event instead.

Syntax

Use the event name in methods likeaddEventListener(), or set an event handler property.

js
addEventListener("error", (event) => { })onerror = (event) => { }

Event type

A genericEvent.

Bubbling

This event bubbles toIDBDatabase. Theevent.target property refers to theIDBTransaction object that bubbles up.

For more information, seeEvent bubbling.

Examples

This example opens a database and tries to add a record, listening for theerror event for theadd() operation (this will occur if, for example, a record with the giventaskTitle already exists):

js
// Open the databaseconst dBOpenRequest = window.indexedDB.open("toDoList", 4);dBOpenRequest.onupgradeneeded = (event) => {  const db = event.target.result;  // Create an objectStore for this database  const objectStore = db.createObjectStore("toDoList", {    keyPath: "taskTitle",  });  // define what data items the objectStore will contain  objectStore.createIndex("hours", "hours", { unique: false });  objectStore.createIndex("minutes", "minutes", { unique: false });  objectStore.createIndex("day", "day", { unique: false });  objectStore.createIndex("month", "month", { unique: false });  objectStore.createIndex("year", "year", { unique: false });};dBOpenRequest.onsuccess = (event) => {  const db = dBOpenRequest.result;  // open a read/write db transaction, ready for adding the data  const transaction = db.transaction(["toDoList"], "readwrite");  transaction.addEventListener("error", () => {    console.log(`Error adding new item: ${newItem.taskTitle}`);  });  const objectStore = transaction.objectStore("toDoList");  const newItem = {    taskTitle: "my task",    hours: 10,    minutes: 10,    day: 10,    month: "January",    year: 2020,  };  const objectStoreRequest = objectStore.add(newItem);};

The same example, using theonerror property instead ofaddEventListener():

js
// Open the databaseconst dBOpenRequest = window.indexedDB.open("toDoList", 4);dBOpenRequest.onupgradeneeded = (event) => {  const db = event.target.result;  // Create an objectStore for this database  const objectStore = db.createObjectStore("toDoList", {    keyPath: "taskTitle",  });  // define what data items the objectStore will contain  objectStore.createIndex("hours", "hours", { unique: false });  objectStore.createIndex("minutes", "minutes", { unique: false });  objectStore.createIndex("day", "day", { unique: false });  objectStore.createIndex("month", "month", { unique: false });  objectStore.createIndex("year", "year", { unique: false });};dBOpenRequest.onsuccess = (event) => {  const db = dBOpenRequest.result;  // open a read/write db transaction, ready for adding the data  const transaction = db.transaction(["toDoList"], "readwrite");  transaction.onerror = () => {    console.log(`Error adding new item: ${newItem.taskTitle}`);  };  const objectStore = transaction.objectStore("toDoList");  const newItem = {    taskTitle: "my task",    hours: 10,    minutes: 10,    day: 10,    month: "January",    year: 2020,  };  const objectStoreRequest = objectStore.add(newItem);};

Specifications

Specification
Indexed Database API 3.0
# eventdef-idbrequest-error

Browser compatibility

See also

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp