본문 바로가기

프로그래밍/Javascript & JQuery8

[JQuery] 뒤로가기 접근 시 이벤트 뒤로가기로 페이지 접근 했을 때, BFCache 이슈가 생기면 여러가지 방법으로 처리 가능합니다. Spring에서 HttpServletRespose을 사용하여 no-cache 처리할 수도 있고, Html 상에서 no-cache 설정할 수도 있지만 간단하게 아래처럼 스크립트에서 처리했습니다. $(window).bind("pageshow", function(e){ if(e.persisted || (window.performance && (window.performance.navigation.type == 2))) { // 여기에 로직 작성 } }); window.performance.navigation.type == 2 / 뒤로가기 (BFCache 사용) 2023. 11. 17.
[JQuery] serializeObject 미동작 해결 방법 가끔가다가 serializeObject 가 제대로 동작하지 않는 이슈가 있었습니다. 아마도 태그가 제대로 안 닫혔거나 name이 제대로 없거나 하는 오류가 존재했던 것 같은데 어떨 땐 되고 어떨 땐 안 되는 게 이상합니다. serializeObject 가 제대로 동작하지 않을 땐, serializeArray로 form을 리스트로 가져온 후 Object로 만들어주었습니다. var list = []; var obj = {}; var cnt = 0; var array = $("#form").serializeArray(); array.forEach(function(data, idx){ if(data.name.split('.')[0].indexOf(cnt) == -1){ list.push(obj); obj = {.. 2023. 11. 15.
[Javascript] 숫자를 한글로 표현하기 숫자를 읽기 쉽게 한글로 표현해보려고 합니다. 숫자를 한글로 변경하려면 우선 Array에 '조'까지 변환할 수 있게 변수 hanA와 danA를 추가해줍니다. 그 외 필요한 변수들도 추가합니다. var numFull = document.getElementById("nubmer").value; var hanA = new Array("","일","이","삼","사","오","육","칠","팔","구","십"); var danA = new Array("","십","백","천","","십","백","천","","십","백","천","","십","백","천"); var result = ""; var num = ""; var below = ""; var str = ""; 정수를 한글로 변경하는 방법 입니다. for(.. 2023. 5. 25.
[JQuery] checkbox 전체선택/전체해제 이벤트 주기 화면 목록에서 체크박스 기능을 구현해야한다면 전체선택/전체해제 기능이 필요할 것입니다. 우선, 아래와 같이 html로 table을 그려줍니다. 헤더부분에 전체 선택/해제 할 수 있도록 checkbox를 하나 만들어줍니다. 아이디 이름 gildong1 홍길동 gilsun 홍길순 gil2 홍길이 $("#memberAllChk").change(function(){ if($("#memberAllChk").is(":checked")){ $(".memberChk").prop("checked", true); }else{ $(".memberChk").prop("checked", false); } }); 테이블 헤더의 memberAllChk 를 선택할때 마다 memberChk의 클래스가 전부 선택되거나 취소되어야합니다... 2022. 8. 1.
[Javascript] 유니코드로 문자열 byte 자르기 게시판에서 입력받은 글의 byte 수를 노출시킬 때, length 함수를 사용하여 byte 수를 계산하는 경우가 있습니다. 영문일 경우에는 상관이 없지만, 한글인 경우는 한 글자가 1byte로 계산되어(한글은 한 글자에 2byte) 글자 수가 일치하지 않습니다. 아래의 getByte()처럼 charCodeAt(i) 함수를 사용하여 i번째 문자의 유니코드를 비교해줍니다. * 유니코드란? 전 세계의 모든 문자를 다루도록 설계된 표준 문자 전산 처리 방식 function getByte(str) { var l = 0; for (var i=0; i 128) ? 2 : 1; } return l; } 입력받은 str의 length 만큼 반복하여 유니코드를 비교해 byte 수를 합산합니다. getByte()로 화면에 .. 2022. 7. 14.
반응형