The result
property of the IDBRequest
interface returns the result of the request. If the the request failed and the result is not available, an InvalidStateError
exception is thrown.
Note: This feature is available in Web Workers.
SyntaxEdit
var myResult = request.result;
Value
An IDBObjectStore
containing the result of the request.
ExampleEdit
The following example requests a given record title, onsuccess
gets the associated record from the IDBObjectStore
(made available as objectStoreTitleRequest.result
), updates one property of the record, and then puts the updated record back into the object store. For a full working example, see our To-do Notifications app (view example live.)
var title = "Walk dog";
// Open up a transaction as usual
var objectStore = db.transaction(['toDoList'], "readwrite").objectStore('toDoList');
// Get the to-do list object that has this title as it's title
var objectStoreTitleRequest = objectStore.get(title);
objectStoreTitleRequest.onsuccess = function() {
// Grab the data object returned as the result
var data = objectStoreTitleRequest.result;
// Update the notified value in the object to "yes"
data.notified = "yes";
// Create another request that inserts the item back into the database
var updateTitleRequest = objectStore.put(data);
// When this new request succeeds, run the displayData() function again to update the display
updateTitleRequest.onsuccess = function() {
displayData();
};
};
SpecificationsEdit
Specification | Status | Comment |
---|---|---|
Indexed Database API The definition of 'result' in that specification. |
Editor's Draft |
Browser compatibilityEdit
See alsoEdit
- Using IndexedDB
- 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.)