2010. 12. 29. 23:49

자바스크립에서 쿠키를 제어하기위해서는 손이 많이 가므로 미리 만들어둔 함수를 사용하는 것이 좋습니다.
인터넷 뒤저보면 여러가지 형태가 있으니 마음에 드는 걸 사용하면 되죠.
문제는 아래 코드로는 asp.net에서 비하인드에서 읽어지지가 않습니다.-_-;
인코딩 방식에 차이가 있나해서 몇가지 해봤는데 여전이 안읽어지더군요.
솔직이 쿠키로 비하인드로 값을 전달하는 건 안좋다고 생각하기 때문에 상관은 없다 만은....그래도 필요할때 안되면 짜증날 것 같은데말이저 ㅎㅎ ㅎㅎㅎ

function setCookie( name, value, expiredays )
{ 
	var todayDate = new Date(); 
 
	//쿠키유효기간 설정
	todayDate.setDate( todayDate.getDate() + expiredays );
	//쿠키내용
	document.cookie = name + "=" + escape( value ) + "; path=/ ; expires=" + todayDate.toUTCString() + ";" ;
} 

function getCookie( name ) 
{ 
	var nameOfCookie = name + "="; 
	var x = 0; 
 
	//쿠키를 분리한다.
	while ( x <= document.cookie.length ) 
	{
		//찾을 쿠키이름 길이 받아오기
		var y = (x + nameOfCookie.length);
  
		//찾을 쿠키 이름과 같은지?
		if ( document.cookie.substring( x, y ) == nameOfCookie ) 
		{ 
			//같다면
			//쿠키에서 데이터를 구분자로 자른후 길이가 -1인지?
			if ( (endOfCookie = document.cookie.indexOf( ";", y )) == -1 ) 
			{
				//구분자가 없다면 쿠키 길이만큼 자른다.
				endOfCookie = document.cookie.length; 
			}
   
			//잘라낸 쿠키에서 데이터만 분리한다.
			return unescape( document.cookie.substring( y, endOfCookie ) ); 
		} 
  
		//다음 쿠키 시작지점으로 이동
		x = document.cookie.indexOf( " ", x ) + 1; 
  
		//더이상 이동할 것이 없다면 멈춘다.
		if ( x == 0 ) 
		{
			break;
		}
	}
 
	return ""; 
}

댓글 작성

이름
패스워드
홈페이지
비밀글