<html>
<head><title></title>
<script>
//Cookie를 생성하는 Function
function newCookie(name,value,days) { //쿠기를 생성하는 function
var days = 10; // 쿠키저장 일수
if (days) {
var date = new Date(); //날짜 객체 생성
date.setTime(date.getTime()+(days*24*60*60*1000)); //10일로 설정된 시간을 밀리세컨드로 변환
var expires = "; expires="+date.toGMTString(); //쿠키 만료일을 변수 expires에 설정함
}
else
var expires = ""; //days 변수가 초기화 안될 경우 expires를 NULL로 초기화
document.cookie = name+"="+value+expires+"; path=/"; //쿠키생성
}
//name의 Cookie값을 검색하여서 값을 가져오는데 없으면 NULL을 반환
function readCookie(name) {
//name으로 Cookie의 값을 검색해서 반환한다 없으면 NULL을 반환
var nameSG = name + "=";
var nuller = '';
if (document.cookie.indexOf(nameSG) == -1) //Cookie를 검색
return nuller;
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameSG) == 0) return c.substring(nameSG.length,c.length);
}
return null;
}
//checkbox의 에 따라서 Cookie를 설정(체크이벤트를 잡아서 동작)
function changCB()
{
if ( !document.form.checker.checked)
delMem();
else
toMem();
}
//Cookie에 값을 넣는다.
function toMem()
{
newCookie('theName', document.form.name.value);
}
//Cookie에 값을 ""로 초기화 한다.
function delMem()
{
newCookie('theName',"",1);
document.form.name.value = ''; // add a line for every field
}
//window.load 이벤트에 호출하는 function으로 페이지가 로딩 되면서 값을 세팅하는 부분
function remCookie()
{
if (readCookie("theName") == " " || readCookie("theName") == "" )
document.form.checker.checked = false;
else
{
document.form.name.value = readCookie("theName");
document.form.checker.checked = true;
}
//document.form.email.value = readCookie("theEmail");
}
//window.load이벤트 호출부
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function()
{
if (oldonload)
{
oldonload();
}
func();
}
}
}
addLoadEvent(function() {
//웹페이지가 로딩되면서 동작하는 function
remCookie();
});
</script>
</head>
<body>
<form name="form" action="" method="post" onsubmit="if (this.checker.checked) toMem()">
<table border="0" cellpadding="0" cellspacing="3" align="center" width="460">
<tr>
<td width="170" align="right">ID: </td>
<td width="290"><input size="30" name="name" id="name"></td>
</tr>
<tr>
<td width="170" align="right"></td>
<td width="290"><input type="checkbox" id="checker" name="checker" onchange="changCB()"> ID저장</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="Submit">
</td>
</tr>
</table>
</form>
</body>
</html>
- 쿠키를 이용하여서 ID를 저장하는 소스입니다.
- Submit 버튼을 누르면 이벤트를 캐치 해서 쿠키에 값을 설정한다.
- 참고 : http://www.blueb.co.kr/bbs.php?table=JS_12&where=ALL&search_step=1&category=쿠키&query=view&uid=87&p=1
'공부방 > 자바스크립트' 카테고리의 다른 글
[자바스크립트] location.href 와 location.replace() (0) | 2009.11.20 |
---|---|
[자바스크립트] confirm 쓰는 예 (0) | 2009.11.06 |
[자바스크립트] input type=file에서 선택된 값 초기화 하기 (0) | 2009.11.06 |
[자바스크립트] input type=file에서 찾아보기버튼 그림으로 바꾸기 (0) | 2009.11.06 |
[자바스크립트] 에러메세지 (0) | 2009.10.20 |