Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>indexed DB</title>
- <link rel="stylesheet" href="css/bootstrap.css">
- <script src="js/jquery-3.2.1.min.js"></script>
- </head>
- <body>
- <div class="container">
- <div class="jumbotron">
- <h1>My Friends</h1>
- </div>
- <div>
- <form id="addform" class="form-inline">
- <div class="form-group">
- <input type="text" id="fname" placeholder="이름" class="form-control">
- </div>
- <div class="form-group">
- <input type="email" id="femail" placeholder="Email" class="form-control">
- </div>
- <div class="form-group">
- <input type="text" id="fphone" placeholder="전화번호" class="form-control">
- </div>
- <button type="submit" class="btn-add btn btn-default">저장</button>
- </form>
- </div>
- <div>
- <table id="address" class="table">
- <tr class="active">
- <td>번호</td>
- <td>이름</td>
- <td>Email</td>
- <td>연락처</td>
- </tr>
- </table>
- </div>
- </div>
- <script>
- var db;
- //db open(없으면 생성)
- var request = window.indexedDB.open("adbook",1);
- request.onerror = function(event) {
- console.log("DB Open Error");
- }
- //After DB Open
- request.onsuccess = function(event){
- db = request.result;
- readAll();
- }
- request.onupgradeneeded = function(event){
- var result = event.target.result;
- var objectStore = result.createObjectStore("address",{keyPath:"id", autoIncrement:true});
- }
- $(".btn-add").on("click",function(e){
- e.preventDefault();
- var friend = {};
- friend.fname = $("#fname").val();
- friend.femail = $("#femail").val();
- friend.fphone = $("#fphone").val();
- if( ! friend.fname || ! friend.femail || ! friend.fphone ) {
- alert("모든 항목을 입력하세요.");
- return;
- }
- saveData(friend);
- });
- function saveData(data) {
- var tr = db.transaction(["address"],"readwrite");
- var store = tr.objectStore("address");
- var request = store.add(data);
- request.onsuccess = function(event){
- var id = event.target.result;
- data.id = id;
- addList(data);
- $("#fname").val("");
- $("#femail").val("");
- $("#fphone").val("");
- }
- request.onerror = function(event){
- console.log("Save Error");
- }
- }
- function readAll(){
- var tr = db.transaction(["address"]);
- var store = tr.objectStore("address");
- store.openCursor().onsuccess = function(event){
- var cursor = event.target.result;
- if( cursor ) {
- //console.log(cursor.value);
- addList(cursor.value);
- cursor.continue();
- } else {
- console.log("No Data");
- }
- }
- }
- function addList(data) {
- var tr = "<tr>";
- tr += "<td>" + data.id + "</td>";
- tr += "<td>" + data.fname + "</td>";
- tr += "<td>" + data.femail + "</td>";
- tr += "<td>" + data.fphone + "</td>";
- tr += "</tr>";
- $("#address tr:last").after(tr);
- }
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment