変数 = db.transaction("mydata").
objectStore( 名前 );
変数 = 【IDBObjectStore】.get(検索文字);【IDBRequest】.onsuccess = function(e){
変数 = e.target.result;
if (!val) return;
};※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=utf-8">
<title>Sample</title>
<style>
h1 {font-size: 14pt; font-weight:bold;
background-color:#DDF; padding:3px; }
#ftable tr td { background-color:#CFC; }
#datas tr td { background-color:#FCC; }
</style>
<script type="text/javascript">
var IDBTransaction;
var IndexedDB;
var db;
var objectStore;
function initial(){
IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction;
try {
IndexedDB = mozIndexedDB;
} catch(e){}
try {
IndexedDB = webkitIndexedDB;
} catch(e){}
var request = IndexedDB.open("MyTestDatabase");
request.onerror = function(event) {
alert("ERROR!");
};
request.onsuccess = function(event) {
db = request.result;
createObjectStoreMethod();
//alert("OK!");
};
}
function createObjectStoreMethod(){
var request = db.setVersion("1.0");
request.onerror = function(event) { /* ERROR */ };
request.onsuccess = function(event) {
try {
objectStore = db.createObjectStore("mydata", { keyPath: "name" });
objectStore.createIndex("name", "name", { unique: true });
}catch(e){}
};
}
function doFind(){
if (!db) return;
var datas = document.getElementById("ftable");
for (var i =datas.childNodes.length-1; i>=0; i--){
datas.removeChild(datas.childNodes[i]);
}
var fstr = document.getElementById("fstr").value;
var objectStore = db.transaction("mydata").objectStore("mydata");
var re = objectStore.get(fstr);
re.onsuccess = function(e){
var val = e.target.result;
if (!val) return;
var tr = document.createElement("tr");
var td1 = document.createElement("td");
td1.innerHTML = val.name;
tr.appendChild(td1);
var td2 = document.createElement("td");
td2.innerHTML = val.email;
tr.appendChild(td2);
var td3 = document.createElement("td");
td3.innerHTML = val.tel;
tr.appendChild(td3);
datas.appendChild(tr);
};
}
</script>
</head>
<body onload="initial();">
<h1>Index DB Sample.</h1>
<div>
<input type="text" id="fstr">
<input type="button" onclick="doFind();" value="Find">
</div>
<table id="ftable" width="400px"></table>
</body>
</html>
| << 前へ | 次へ >> |