본문 바로가기

[개발] Programming197

자바스크립트 정규표현식 Case1. 숫자만 허용, 나머지 문자는 ''으로 var testString = "123abc45@67"; testString = testString.replace(/[^0-9]/g, ''); // ^:~가 아닐 경우, [0-9] 모든 숫자, g: 모든 문자 숫를 대상으로 > 숫자가 아닌 모든 것들을 ''으로 > 결과: testString = "1234567" Case2. 한글만 허용, 나머지 문자는 ''으로 var testString = "123가나다45@67"; testString = testString.replace(/[ㄱ-ㅎ|ㅏ-ㅣ|가-힣]/g, ''); > 결과: testString = "가나다" Case3. 이메일 형식만 가능 var emailAddr = "이메일주소";var filter = .. 2018. 10. 30.
부모창 reload 오류, "물품을 구매한 경우 [취소]를 클릭하여 중복 거래를 방지해야 합니다.." opener.document.location.reload();로 부모 창을 리로드(또는 새로고침)하려고 하는데 아래와 같이 경고창 뜸. 원인은 Post 방식의 Submit이 다시 실행되서.. 웹 페이지를 다시 표시하려면 Internet Explorer에서 이전에 전송한 정보를 다시 전송해야 합니다. 물품을 구매한 경우 [취소]를 클릭하여 중복 거래를 방지해야 합니다. 그렇지 않으면 [다시 시도]를 클릭하여 웹 페이지를 다시 표시하십시오. 2가지 해결 방법 1. Get 방식의 Submit 이용 opener.document.form이름.submit(); 2. 링크 이용 window.opener.location.href = 부모창의 경로 [참조] http://anneprogramer.tistory.com/18 2018. 10. 30.
HTML5에서 사용 가능한 클라이언트 세션 (sessionStorage) sessionStorage 란?HTML5에서 사용 가능한 클라이언트 세션 (sessionStorage)(Firefox 3+, Safari 4+, and Internet Explorer 8+ 지원) sessionStorage 특징 - 윈도우 새션(또는 탭) 별로 다 다른 sessionStorage를 갖는다. 즉, 쿠키와는 다르게 데이터를 공유하지 않는다.- 현재 페이지에서 다른 페이지로 갔다가 돌아와도 데이터는 유지된다. 해당 페이지를 닫기 전까지는 바인딩이 되어 있다.- key:value 형식으로 데이터를 저장한다. 5가지 메소드 지원 getItem(key) – 키의 값 호출, 키가 없으면 null setItem(key, value) – 키와 값 설정 removeItem(key) – 키 제거 key(po.. 2018. 10. 30.
자바스크립트 배열 선언, 초기화 1차원 배열 선언 기본형태 var arr = new array(); 1차원 배열 초기화 3의 크기로 선언 var arr = new Array(3); 특정 값으로 선언 var arr1 = [1, 2, 3, 10, 20]; var arr2 = [1, 2, , , '', 'A', 'B', false]; 배열 관련 함수 배열 자르기 var arr1 = [1, 2, 3, 10, 20]; arr1 = arr1.slice(0, 2); arr1의 요소는 [1, 2, 3]; 가 된다. 배열 내 요소들 중 최대 값 구하기 var arr1 = [1, 2, 3, 10, 20]; var maxNum = Math.max.apply(null, arr1); > maxNum은 20이 된다. 2018. 10. 30.
자바스크립트 쿠키로 하루 동안 팝업창 노출하지 않기 소스 동작 방식팝업 창에서 '오늘 하루 동안 팝업창 닫기'를 클릭할 경우 창이 닫히고 아래 closePop()을 호출하여 쿠키를 구운 뒤 스크립트에서 쿠키를 검사하여 기간 동안 노출 되지 않도록 한다. 스크립트 소스 if(!checkPoupCookie("close")){ window.open('팝업창'); } function checkPoupCookie(cookieName){ var cookie = document.cookie; if(cookie.length > 0){ // 현재 쿠키가 존재할 경우 // 자식창에서 set해준 쿠키명이 존재하는지 검색 startIndex = cookie.indexOf(cookieName); if(startIndex != -1){ // 존재 한다면 return true; }.. 2018. 10. 29.
자바스크립트 버블 정렬 소스 자바를 배우면 무조건 접하게되는 숙제 바로 버블 소트ㅎㅎ 간단하게 앞 뒤 값을 for문을 두번 돌려 정렬하는 것라 생각하면 된다. 자바 소스 function bubbleSorting() { for (var i=0; i 2018. 10. 29.
자바스크립트, 팝업 차단 여부 검사하는 방법 브라우저 설정에 의해 팝업이 차단된 경우 자바스크립트에서 감지하는 방법은 다음과 같다. function popup(){ var newPop = open("", "window1", "팝업창 옵션"); if(newPop == null){ alert("팝업이 차단되어 있습니다. 차단을 해제해 주세요! "); } } 동작 원리팝업을 띄워 리턴 값이 발생하는지를 검사한다. 만약 차단되어 있으면, null이 반환되므로 안뜬 것으로 간주한다. 참고 사항 크롬의 경우 팝업이 한번이라도 뜨게 되면 새로고침이나 팝업창을 닫아도 떠있는 상태로 인식한다. 2018. 10. 29.
JQuery, 서로 다른 태그를 하나의 click event에 바인딩 하기 JQuery Click Event 업무를 하다보면 어쩌다가 한 번씩은 서로다른 태그나 버튼으로 하나의 함수를 호출할 일이 생긴다.이때 서로 다른 click event 한곳에서 처리 하기 위해서는 두 개의 서로 다른 id 나 class 를 한 이벤트로 명시해주면 된다. 아래 예시에서 두 개의 서로 다른 태그가 있고 각각 클래스가 추가되어 있다.JQuery 소스에서 이벤트를 바인딩할 때 함께 명시해주면 깔끔하게 해결 된다. 페이지 소스 test1 test2 JQuery 소스 $('.tag1, .tag2').click(function() { // 두 클래스에서 발생하는 click event 처리 var $this = $(this); if ($this.hasClass('tag1')) { // tag1을 클릭한 .. 2018. 10. 29.
JQuery, visible(not hidden) elements 개수 구하기 JQuery Elements 개수 구하기 아래 div tag 중에서 .hide() 시킨 tag를 제외한 나머지 visible tag 개수 구하는 방법 예제 페이지 소스 a b c d JQuery 소스 $(".hideOrShow").index(0).hide(); $(".hideOrShow").index(1).hide(); var count = $(".hideOrShow:visible").length; a, b는 hide 되었으므로 변수 count에는 2가 저장된다. 같은 결과를 위해 .size() 함수를 사용해도 된다. $(".hideOrShow:visible").size(); 2018. 10. 29.