//var dateWin; function showSetWin(objName){ console.log(objName); //SetWin.style.zIndex=10; //SetWin.style.top = window.event.y + document.body.scrollTop; //SetWin.style.top = 60 + document.body.scrollTop; //SetWin.style.left = window.event.x + document.body.scrollLeft - SetWin.offsetWidth; //SetWin.style.left = 60 + document.body.scrollLeft; //SetWin.style.left = window.event.x + document.body.scrollLeft; // 2014.08.21 by YoungJun Cho. 달력 선택 레이어 팝업 위치 조절 //SetWin.style.top = window.event.clientY + document.body.scrollTop; //SetWin.style.left = window.event.clientX + document.body.scrollLeft; // 2019.03.05 by SHIN HTML5반영으로 달력 선택 레이어 팝업 위치 조절 수정 $("#SetWin").css({ "position" : "absolute", "top" : window.event.clientY + document.body.scrollTop+"px", "left" : window.event.clientX + document.body.scrollLeft+"px" }); //ie10,11 호환성 크기 문제 수정 SetWin.style.width='auto'; SetWin.style.height='auto'; // 달력 컨트롤 레이어 팝업 호출시 전달되는 파라미터 형식이 [form name].[input name] 와 같다. // . 으로 split 하여 input name 값을 확인한다. var objNames = objName.split("."); //alert(objNames.length); //var formObjName = objNames[0]; var inputObjName = objNames[1]; // 동일한 name input 이 여러개가 존재하므로 배열로 input element 를 확인한다. var arrInputDates = document.getElementsByName(inputObjName); var inputDateValue; // 달력 선택 일자가 입력될 input 의 type 이 text 인 것만 체크한다.(hidden type 은 일자 선택에서는 불필요하다.) for (var i = 0 ; i < arrInputDates.length ; i++) { if (arrInputDates[i].type == "text") { inputDateValue = arrInputDates[i].value; } } var arrInputDates; var year; var month; var day; var validDate = /^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$/; if (inputDateValue == "" || !validDate.test(arrInputDates)) { // input element 가 빈문자열일 경우 현재일자로 설정한다. show_date = new Date(); } else { // input element 가 빈문자열이 아닐 경우 입력되어있는 일자를 - 로 split 하여 년,월,일을 확인한다. arrInputDates = inputDateValue.split("-"); year = eval(arrInputDates[0]); month = eval(arrInputDates[1]); // 01~09 월을 parseInt 로 변환시 0 으로 변환되므로 eval 을 사용한다.( IE 9 버전 부터 parseInt 시 접두사 '0'을 처리하지 않는다. - microsoft 공식홈에서 확인. ) day = eval(arrInputDates[2]); // 01~09 일을 parseInt 로 변환시 0 으로 변환되므로 eval 을 사용한다.( IE 9 버전 부터 parseInt 시 접두사 '0'을 처리하지 않는다. - microsoft 공식홈에서 확인. ) show_date = new Date(year,month-1,day); // 확인한 년,월,일 로 날짜 객체를 생성한다. } var sDateWin = startDate(objName); //show_date을 기준으로 설정 SetWin.innerHTML = sDateWin; set_cal(objName, show_date); SetWin.style.visibility='visible'; } function startDate(objName){ var dateWin = '