반응형

쿠키 저장

//이름 / 값 / 저장 시킬 시간
function _fnSetCookie(cookie_name, value, hours) {
    if (hours) {
        var date = new Date();
        date.setTime(date.getTime() + (hours * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    } else {
        var expires = "";
    }
    document.cookie = cookie_name+ "=" + value + expires + "; path=/";
}

 

쿠키 값 가져오기

function _fnGetCookie(cookie_name) {
    var x, y;
    var val = document.cookie.split(';');

    for (var i = 0; i < val.length; i++) {
        x = val[i].substr(0, val[i].indexOf('='));
        y = val[i].substr(val[i].indexOf('=') + 1);
        x = x.replace(/^\s+|\s+$/g, ''); // 앞과 뒤의 공백 제거하기
        if (x == cookie_name) {
            return unescape(y); // unescape로 디코딩 후 값 리턴
        }
    }
}

 

쿠키 삭제하기

function _fnDelCookie(cookie_name) {
    _fnSetCookie(cookie_name, "", "-1");
}
반응형
//클릭 시 자동완성 리스트 꺼짐 
$(document).click(function(e){ 
    
    if (!$(e.target).is('#해당영역ID')) { 
        //이벤트
    }

    //ex
    if (!$(e.target).is('#')) { 
        $("#해당영역ID").css("display","none"); 
    } 
});
반응형

ajax로 파일업로드할떄

 

contentType: false

processData: false

 

이 없으면 illegal invocation Error가 뜸. 

 

결론: ajax로 파일 업로드할 때는 

contentType: false

processData: false

 

 

======================================================

2021.03.04 내용 추가

Form 데이터를 감싸서 파일로 던질때는 전부다 Name으로 HTML태그로 넣어야지 데이터를 보낼 수 있고.

 

Form ID로 아래와 같이 감싸서 data를 Ajax로 보내야지만 back단으로 보낼 수 있다.

var formData = new FormData(vForm[0]);

 

이때 vForm은 해당 form의 ID를 넣어주면 됩니다.

 

아래는 예시

var vForm;

if (matchMedia("screen and (min-width: 1025px)").matches) 
{
	//pc
	vForm = $("#SolutionQ_Form_pc");
} 
else 
{
	//mo
	vForm = $("#SolutionQ_Form_mo");
}

var formData = new FormData(vForm[0]);

$.ajax({
	type: "POST",
	url: "/HP_File/Upload_EmailFiles",
	async: true,
	dataType: "json",
	contentType: false, //Ajax로 이메일 보낼 때 필수 추가 하여야 합니다.
	processData: false, //Ajax로 이메일 보낼 때 필수 추가 하여야 합니다.
	data: formData,
	success: function (result) {

	}
});

 

반응형
$.ajax({
	type: "POST",
	url: 유알엘(Url),
	dataType: "json",
	data: 데이터,
	success: function (result, status, xhr) {
		//결과 값 
	},
	beforeSend: function (){  
		$("#Progress_Bar").show(); //프로그래스 바
	},
	complete : function (){
		$("#Progress_Bar").hide(); //프로그래스 바
	},
	error: function (xhr, status, error) {
		alert("[Error]관리자에게 문의 해 주세요. " + status);
		return;
	}
});

 

beforeSend는 Ajax를 보내기 전에 쓰는 함수

complete는 ajax 작업이 끝나고 나서 쓰는 함수.

ajax에 async: false 로 되어있다면 프로그래스는 되지 않을 것 입니다.

 

반응형

[2021.04.23]
※XML 데이터를 받아오면 데이터를 파싱해서 가져와야 합니다.
<부모이름>
<자식></자식>
<자식></자식>
<자식></자식>
</부모이름>

이런식의 XML이 있을 경우 부모 이름을 먼저 가져온 다음 반복문으로 나머지 자식 데이터를 가져와야 합니다.

EX)

function fnXmlParsing(vXML){

	//AUMEL
	console.log($(vXML).find('XML부모이름').text());

	//alert($(vXML).find('동일한 부모 이름').length);
	//여러개
	$(vXML).find('동일한 부모 이름').each(function(){ // Jquery 반복문인 each를 사용 하였습니다.
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
		console.log($(this).find("xml 자식 이름").text());
	});
}
반응형

<google api 이용하여 알아내기>

 

[javascript] 자바스크립트로 내 IP확인하기_(공인ip)

 

1. 코드 공개

 

 

 

<script>

document.write( ip() );

</script>

 

아래에, 전체 코드를 작성하였습니다. 

구글과 네이버검색을 많이 이용하는데 

블로그에서 이렇게 적어주는게 편한 기억이 많았습니다^^

 

2. 예제

파일명 : index.html

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>인덱스 페이지</title>

 

</head>

<body>

<script>

document.write( ip() );

</script>

</body>

</html>

 

 

$.getJSON('http://jsonip.appspot.com/?callback=?', function(data){ alert(data.ip); });

Probably easier to understand - an alternative, without jQuery, would be:

<script type="text/javascript"> function getip(data){ alert(data.ip); } </script> <script type="text/javascript" src="http://jsonip.appspot.com/?callback=getip"> </script>

Note that when you include http://jsonip.appspot.com/?callback=getip as a script in your HTML you get valid JavaScript as response:

getip({"ip": "147.234.2.5", "address":"147.234.2.5"});

-------------------------------------------------------------------------------

기타 사이트

 

$.get("http://ipaddress.urgulbook.com/",function(res){

    alert(res.IP);

},"jsonp");

 

 

JAVASCRIPT 접속 IP 확인하는 방법

 

 

자바스크립트로 클라이언트 IP를 확인하는 방법입니다.

 

PHP 같은 서버사이드 언어에서는 $_SERVER['REMOTE_ADDR'] 로 확인할 수가 있지만,

 

자바스크립트에서는 제공하는 함수가 없습니다.

 

아래예제는 서버사이드의 js를 호출하는 방식으로 IP를 가져오는 방법입니다.

 

 

▶ jQuery 방식

 

<script type="text/javascript" src="//code.jquery.com/jquery.min.js"></script>

<script type="text/javascript">

$(function() {

$.getJSON("https://api.ipify.org?format=jsonp&callback=?",

function(json) {

document.write(json.ip);

}

);

});

</script>

 

 

▶ JAVASCRIPT 방식

 

<script type="text/javascript">

function getIP(json) {

document.write(json.ip);

}

</script>

 

 

https://www.ipify.org/ 여기에 가면 언어별 사용예제가 있습니다.



출처: https://littlecarbb.tistory.com/entry/JAVASCRIPT-접속-IP-확인하는-방법 [Shameless Simon]

출처: https://littlecarbb.tistory.com/entry/JAVASCRIPT-접속-IP-확인하는-방법 [Shameless Simon]

출처: https://littlecarbb.tistory.com/entry/JAVASCRIPT-접속-IP-확인하는-방법 [Shameless Simon]

반응형

세션 (session)

//세션에 값 입력
sessionStorage.setItem([ ID, data );
//세션 값 출력
sessionStorage.getItem( ID );
//세션 값 삭제
sessionStorage.removeItem( ID );

 

쿠키 (Cookie)

//쿠키 생성 
function _fnSetCookie(name, value, hours) {
    if (hours) {
        var date = new Date();
        date.setTime(date.getTime() + (hours * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    } else {
        var expires = "";
    }
    document.cookie = name + "=" + value + expires + "; path=/";
}


//쿠키 값 입력 

function _fnGetCookie(cookie_name) {
    var x, y;
    var val = document.cookie.split(';');

    for (var i = 0; i < val.length; i++) {
        x = val[i].substr(0, val[i].indexOf('='));
        y = val[i].substr(val[i].indexOf('=') + 1);
        x = x.replace(/^\s+|\s+$/g, ''); // 앞과 뒤의 공백 제거하기
        if (x == cookie_name) {
            return unescape(y); // unescape로 디코딩 후 값 리턴
        }
    }
}


//쿠키 삭제하기

function _fnDelCookie(cookie_name) {
    document.cookie = cookie_name + '=; expires=Thu, 01 Jan 1999 00:00:10 GMT;';
}

 

반응형

/^[!$^()-_0-9a-zA-Z!$^()-_]([-_.]?[!$^()-_0-9a-zA-Z!$^()-_])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*/i;

 

!$^()-_ 문자 숫자 사이 !$^()-_      @ 문자만 가능하게 한 정규식

 

ex) !$-_abc-_@naver.com 

 

+ Recent posts