web storage 기본
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(function(){
//저장
$('#saveBtn').click(function(){
if(!window.localStorage){
//모든 브라우저가 HTML5 로컬스토리지 지원해서 이 구문은 안 써도 됨.
alert("현재 브라우저는 로컬스토리지를 지원하지 않습니다");
return false;
}
//로컬스토리지 저장하는 3가지 방법. 다 같은 방법.
localStorage.setItem("key1", "안녕"); //함수 이용. key-value
localStorage.key2 = "HI";
localStorage["key3"] = "HELLO";
});
//삭제
$('#deleteBtn').click(function(){
localStorage.removeItem("key1"); //키만 입력하면 됨
});
//전체삭제
$('#deleteAllBtn').click(function(){
localStorage.clear();
//localStorage에 있는 모든 내용을 삭제... 주의해서 사용!
});
//내용보기
$('#showBtn').click(function(){
alert(localStorage.getItem("key1")+","+localStorage.getItem("key2")+","+localStorage.getItem("key3"));
});
});
</script>
</head>
<body>
<button id="saveBtn">저장</button>
<button id="deleteBtn">삭제</button>
<button id="deleteAllBtn">전체삭제</button>
<button id="showBtn">내용보기</button>
</body>
</html>
javaScript로 구현된 것
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>web Storage</title>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript">
var key,val,entries;
$(document).ready(function(){
showAll();//저장된 로컬스토리지 값을 불러오기
$('#save').click(function(){
save();
});
$('#remove').click(function(){
remove();
});
$('#entries').change(function(){
entrySelect();
});
$('#new_win').click(function(){
window.open(location.href);
});
});
function showAll(){
key=document.getElementById("k");
val=document.getElementById("v");
entries=document.getElementById("entries");
//스토리지에 변경이; 있으면 목록을 다시 표시,showAll() 메소드를 이벤트 리소스에 등록
window.addEventListener("storage",showAll,false);
entries.innerHTML="";//이전 항목들을 모두 삭제
for(var i=0; i<localStorage.length; i++){
var k=localStorage.key(i);
entries.options[entries.options.length]=new Option(k+":"+localStorage[k],k);//마지막 k가 value값이 되고 그 전에 있는 것들이 option사이의 값들이 된다
}
}
function save(){
localStorage[key.value]=val.value; //value1.value
document.getElementById("k").value="";
document.getElementById("v").value="";
showAll();
}
//이걸 젤로 나중에...키 얻어서 삭제를 할거니깐..
function remove(){
//localStorage.removeItem(key.value);//선택한 항목을 로컬 스토리지에서 삭제
delete localStorage[key.value]; //이렇게 해도 된다
document.getElementById("k").value="";
document.getElementById("v").value="";
showAll();
}
function entrySelect(){
var selectedOption=entries.options[entries.selectedIndex];
key.value=selectedOption.value;//키값
val.value=localStorage[key.value];
}
</script>
</head>
<body>
<h1>로컬 스토리지 뷰어</h1>
키 : <input type="text" id="k"><br>
값 : <input type="text" id="v"><br><br>
<button id="save">저장</button>
<button id="remove">삭제</button>
<button id="new_win">윈도우 생성</button>
<hr>
<select id="entries" size="5"></select>
</body>
</html>
JQuery로 구현
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>web Storage</title>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript">
var key,val,entries;
$(document).ready(function(){
showAll();//저장된 로컬스토리지 값을 불러오기
$('#save').click(function(){
var kval = $('#k').val();
var vval = $('#v').val();
localStorage.setItem(kval, vval);
$('#k').val("");
$('#v').val("");
showAll();
});
$('#remove').click(function(){
var kval = $('#k').val();
localStorage.removeItem(kval);
$('#k').val("");
$('#v').val("");
showAll();
});
$('#entries').change(function(){
var str = $(this).val(); // key1 : hello
$('#k').val(str);
});
});
function showAll(){
/* key=document.getElementById("k");
val=document.getElementById("v"); */
entries=document.getElementById("entries");
entries.innerHTML="";//이전 항목들을 모두 삭제
for(var i=0; i<localStorage.length; i++){
var k=localStorage.key(i);
entries.options[entries.options.length]=new Option(k+":"+localStorage[k],k);//마지막 k가 value값이 되고 그 전에 있는 것들이 option사이의 값들이 된다
}
}
</script>
</head>
<body>
<h1>로컬 스토리지 뷰어</h1>
키 : <input type="text" id="k"><br>
값 : <input type="text" id="v"><br><br>
<button id="save">저장</button>
<button id="remove">삭제</button>
<hr>
<select id="entries" size="5"></select>
</body>
</html>
'컴퓨터 프로그래밍 > JQuery' 카테고리의 다른 글
append()-img, setTimeOut(), setInterval() (0) | 2020.05.29 |
---|---|
append(), after(), prepend(), before() (0) | 2020.05.29 |
traversing: parent(), children(), find()-attr(), fadeOut(), fadeIn() (0) | 2020.05.29 |
preventDefault()-next(), slideToggle(), show(), hide() (0) | 2020.05.29 |
animate()-이미지, div태그, slideToggle() (0) | 2020.05.29 |