/*************************************************************************
************************* 기타 함수 ************************************
**************************************************************************/
function isValidFormat(input,format) {
if (input.value.search(format) != -1) {
return true;
}
return false;
} function isValidFormat2(str,format) {
if (str.search(format) != -1) {
return true;
}
return false;
}
function isValidEmail(input) {
var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
return isValidFormat(input,format);
}
var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
return isValidFormat(input,format);
}
function isValidZip(input) {
var tel_no = input.split("-");
if (tel_no[0] == "" && tel_no[1] == "" && tel_no[2] == "") {
return true;
}else if (isNaN(tel_no[0]) || isNaN(tel_no[1]) || isNaN(tel_no[2])) {
return false;
}else if (tel_no[0].length < 2 || tel_no[1].length < 3 || tel_no[2].length < 4) {
return false;
} else {
return true;
}
}
function isValidPhone(input) {
var tel_no = input.split("-");
if (tel_no[0] == "" && tel_no[1] == "" && tel_no[2] == "") {
return true;
}else if (isNaN(tel_no[0]) || isNaN(tel_no[1]) || isNaN(tel_no[2])) {
return false;
}else if (tel_no[0].length < 2 || tel_no[1].length < 3 || tel_no[2].length < 4) {
return false;
} else {
return true;
}
}
var tel_no = input.split("-");
if (tel_no[0] == "" && tel_no[1] == "" && tel_no[2] == "") {
return true;
}else if (isNaN(tel_no[0]) || isNaN(tel_no[1]) || isNaN(tel_no[2])) {
return false;
}else if (tel_no[0].length < 2 || tel_no[1].length < 3 || tel_no[2].length < 4) {
return false;
} else {
return true;
}
}
function isValidPhone(input) {
var tel_no = input.split("-");
if (tel_no[0] == "" && tel_no[1] == "" && tel_no[2] == "") {
return true;
}else if (isNaN(tel_no[0]) || isNaN(tel_no[1]) || isNaN(tel_no[2])) {
return false;
}else if (tel_no[0].length < 2 || tel_no[1].length < 3 || tel_no[2].length < 4) {
return false;
} else {
return true;
}
}
function hasCheckedRadio(input) {
if (input.length > 1) {
for (var inx = 0; inx < input.length; inx++) {
if (input[inx].checked) return true;
}
} else {
if (input.checked) return true;
}
return false;
}
if (input.length > 1) {
for (var inx = 0; inx < input.length; inx++) {
if (input[inx].checked) return true;
}
} else {
if (input.checked) return true;
}
return false;
}
function getRadioValue(input) {
if (input.length > 1) {
for (var inx = 0; inx < input.length; inx++) {
if (input[inx].checked) return input[inx].value;
}
} else {
if (input.checked) return input.value;
}
return "";
}
if (input.length > 1) {
for (var inx = 0; inx < input.length; inx++) {
if (input[inx].checked) return input[inx].value;
}
} else {
if (input.checked) return input.value;
}
return "";
}
function hasCheckedBox(input) {
return hasCheckedRadio(input);
}
return hasCheckedRadio(input);
}
function getByteLength(input) {
var byteLength = 0;
for (var inx = 0; inx < input.value.length; inx++) {
var oneChar = escape(input.value.charAt(inx));
if ( oneChar.length == 1 ) {
byteLength ++;
} else if (oneChar.indexOf("%u") != -1) {
byteLength += 2;
} else if (oneChar.indexOf("%") != -1) {
byteLength += oneChar.length/3;
}
}
return byteLength;
}
var byteLength = 0;
for (var inx = 0; inx < input.value.length; inx++) {
var oneChar = escape(input.value.charAt(inx));
if ( oneChar.length == 1 ) {
byteLength ++;
} else if (oneChar.indexOf("%u") != -1) {
byteLength += 2;
} else if (oneChar.indexOf("%") != -1) {
byteLength += oneChar.length/3;
}
}
return byteLength;
}
function getByteLengthVal(input_val) {
var byteLength = 0;
for (var inx = 0; inx < input_val.length; inx++) {
var oneChar = escape(input_val.charAt(inx));
if ( oneChar.length == 1 ) {
byteLength ++;
} else if (oneChar.indexOf("%u") != -1) {
byteLength += 2;
} else if (oneChar.indexOf("%") != -1) {
byteLength += oneChar.length/3;
}
}
return byteLength;
}
var byteLength = 0;
for (var inx = 0; inx < input_val.length; inx++) {
var oneChar = escape(input_val.charAt(inx));
if ( oneChar.length == 1 ) {
byteLength ++;
} else if (oneChar.indexOf("%u") != -1) {
byteLength += 2;
} else if (oneChar.indexOf("%") != -1) {
byteLength += oneChar.length/3;
}
}
return byteLength;
}
function cnt_checkbox(form){
var count = 0
for (var i = 0; i < form.elements.length; i++){
var e = form.elements[i];
if (e.type == 'checkbox')
{
if (e.checked) {
count++;
}
}
}
return count;
}
var e = form.elements[i];
if (e.type == 'checkbox')
{
if (e.checked) {
count++;
}
}
}
return count;
}
function chk_all_checkbox(form){
var count = 0
var count = 0
for (var i = 0; i < form.elements.length; i++){
var e = form.elements[i];
if (e.type == 'checkbox')
{
e.checked = true;
}
}
return count;
}
var e = form.elements[i];
if (e.type == 'checkbox')
{
e.checked = true;
}
}
return count;
}
function unchk_all_checkbox(form){
var count = 0
var count = 0
for (var i = 0; i < form.elements.length; i++){
var e = form.elements[i];
//alert(e.type);
if (e.type == 'checkbox')
{
e.checked = false;
}
}
return count;
}
var e = form.elements[i];
//alert(e.type);
if (e.type == 'checkbox')
{
e.checked = false;
}
}
return count;
}
function set_readonly(obj) {
obj.readOnly = true;
}
function release_readonly(obj) {
obj.readOnly = false;
}
obj.readOnly = true;
}
function release_readonly(obj) {
obj.readOnly = false;
}
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
function autoTab(input,len, e) {
try {
var keyCode = (isNN) ? e.which : e.keyCode;
var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
if(input.value.length >= len && !containsElement(filter,keyCode)) {
input.value = input.value.slice(0, len);
input.form[(getIndex(input)+1) % input.form.length].focus();
}
} catch(e) {}
return true;
}
function containsElement(arr, ele) {
var found = false, index = 0;
try {
while(!found && index < arr.length)
if(arr[index] == ele)
found = true;
else
index++;
} catch(e) {}
return found;
}
function getIndex(input) {
var index = -1, i = 0, found = false;
try {
while (i < input.form.length && index == -1)
if (input.form[i] == input)index = i;
else i++;
} catch(e) {}
return index;
}
var found = false, index = 0;
try {
while(!found && index < arr.length)
if(arr[index] == ele)
found = true;
else
index++;
} catch(e) {}
return found;
}
function getIndex(input) {
var index = -1, i = 0, found = false;
try {
while (i < input.form.length && index == -1)
if (input.form[i] == input)index = i;
else i++;
} catch(e) {}
return index;
}
function isObject(object_key) {
try {
document.all[object_key].value;
return true;
}catch(e) {
return false;
}
}
try {
document.all[object_key].value;
return true;
}catch(e) {
return false;
}
}
/*************************************************************************
함수명 : delSpaceNum
기 능 : string을 입력받아 공백제거하고 순수 숫자열만 return
인 수 : str은 check 될 string
리턴값 : String/ 문자일경우 false return
**************************************************************************/
function delSpaceNum(str) {
var i = 0; // looping을 돌기위해 필요한 임시변수
var returnStr = ""; // 반환값을 저장시킬 변수
var len = str.length; // 파라메터의 문자열 길이를 담아주는 변수
// string을 한글자씩 비교하는 while문
while (i<len) {
var sub = str.substring(i,i+1) // 한글자를 잘라옴
var code = sub.charCodeAt(0) // 잘라온 글자의 아스키코드를 담아주는 변수
while (i<len) {
var sub = str.substring(i,i+1) // 한글자를 잘라옴
var code = sub.charCodeAt(0) // 잘라온 글자의 아스키코드를 담아주는 변수
//한글자씩 잘라온 것이 공백인지를 검사하는 if문
if (code==32) {
} else {
var returnStr = returnStr + sub;
// 전화번호 값이 문자인 경우 return false 시킴
if (code < 48 || code > 57) {
return false;
}
}
i++;
}
return returnStr;
}
if (code==32) {
} else {
var returnStr = returnStr + sub;
// 전화번호 값이 문자인 경우 return false 시킴
if (code < 48 || code > 57) {
return false;
}
}
i++;
}
return returnStr;
}
/*************************************************************************
함수명 : chkStrLen
기 능 : 입력 필드에 들어온 데이타의 크기를 계산
인 수 : data - 입력 필드에 들어온 데이타
리턴값 :
**************************************************************************/
function chkStrLen(data) {
var size = 0;
var fieldSize = "";
함수명 : chkStrLen
기 능 : 입력 필드에 들어온 데이타의 크기를 계산
인 수 : data - 입력 필드에 들어온 데이타
리턴값 :
**************************************************************************/
function chkStrLen(data) {
var size = 0;
var fieldSize = "";
fieldSize = data.length;
for(i=0; i<fieldSize; i++) {
//특수 문자 체크 ",&,$
//if( data.charCodeAt(i) == 34 || data.charCodeAt(i) == 38 || data.charCodeAt(i) == 36 || data.charCodeAt(i) == 39) {
// return false;
//}
//특수 문자 체크 ",&,$
//if( data.charCodeAt(i) == 34 || data.charCodeAt(i) == 38 || data.charCodeAt(i) == 36 || data.charCodeAt(i) == 39) {
// return false;
//}
//한글이 들어오면 255보다 크다
if( data.charCodeAt(i) > 255 ) {
//size += 2;
size += 3;
} else {
size += 1;
}
}
return size;
}
if( data.charCodeAt(i) > 255 ) {
//size += 2;
size += 3;
} else {
size += 1;
}
}
return size;
}
/*************************************************************************
함수명 : chkStr
기 능 : 입력 필드에 들어온 데이타의 크기를 계산과 특수문자를 체크
인 수 : data - 입력 필드에 들어온 데이터
maxSize - 입력필드의 최대크기
chkNull - null check여부 "Y"=null체크함, "N"=null체크안함.
fName - alert메세지를 뿌려줄것인지 구분 메세지를 넣어주면 해당메세지와 함께 alert창이 뜨고
- 메세지를 넣어주지않으면 alert창이 뜨지 않는다.
리턴값 :
**************************************************************************/
function chkStr(data , maxSize, chkNull, fName) {
var size = 0;
var fieldSize = "";
var errorMesg = fName + "에 입력 하신 값이 너무 큽니다!";
함수명 : chkStr
기 능 : 입력 필드에 들어온 데이타의 크기를 계산과 특수문자를 체크
인 수 : data - 입력 필드에 들어온 데이터
maxSize - 입력필드의 최대크기
chkNull - null check여부 "Y"=null체크함, "N"=null체크안함.
fName - alert메세지를 뿌려줄것인지 구분 메세지를 넣어주면 해당메세지와 함께 alert창이 뜨고
- 메세지를 넣어주지않으면 alert창이 뜨지 않는다.
리턴값 :
**************************************************************************/
function chkStr(data , maxSize, chkNull, fName) {
var size = 0;
var fieldSize = "";
var errorMesg = fName + "에 입력 하신 값이 너무 큽니다!";
if( trim(data) == "" ) {
if( chkNull == "N" || chkNull == "n" ) {
return true;
}
if( chkNull == "N" || chkNull == "n" ) {
return true;
}
if("" == fName){}
else {
alert(fName + "(을)를 반드시 입력 또는 선택하여야 합니다.");
}
return false;
}
else {
alert(fName + "(을)를 반드시 입력 또는 선택하여야 합니다.");
}
return false;
}
fieldSize = data.length;
if( chkSpecialChar(data, chkNull, fName )) { // 특수문자가 없을때는 true를 리턴함.
fieldSize = data.length;
fieldSize = data.length;
for(i=0; i<fieldSize; i++) {
//한글이 들어오면 255보다 크다
if( data.charCodeAt(i) > 255 ) {
//size += 2;
size += 3;
} else {
size += 1;
}
}
//한글이 들어오면 255보다 크다
if( data.charCodeAt(i) > 255 ) {
//size += 2;
size += 3;
} else {
size += 1;
}
}
if( maxSize < size ) {
//메세지가 없으면 alert을 뿌려주지 않겠다.
if("" == fName){}
else {
alert(errorMesg);
}
return false;
} else {
return true;
}
//메세지가 없으면 alert을 뿌려주지 않겠다.
if("" == fName){}
else {
alert(errorMesg);
}
return false;
} else {
return true;
}
} // if checkSpecialChar(data) == true end
else {
//메세지가 없으면 alert을 뿌려주지 않겠다.
if("" == fName){}
else {
}
else {
//메세지가 없으면 alert을 뿌려주지 않겠다.
if("" == fName){}
else {
}
return false;
}// if checkSpecialChar(data) == false end
}// if checkSpecialChar(data) == false end
return true;
}
}
/*********************************************************************************
함수명 : chkRegNo
기 능 : 사업자등록번호 체크 함수
인 수 : str1 - 사업자등록번호 앞 3자리
str2 - 사업자등록번호 중간 2자리
str3 - 사업자등록번호 뒷 5자리
리턴값 :
**********************************************************************************/
function chkRegNo(str1, str2, str3) {
if (chkNumber(str1, "")) return false;
if (chkNumber(str2, "")) return false;
if (chkNumber(str3, "")) return false;
함수명 : chkRegNo
기 능 : 사업자등록번호 체크 함수
인 수 : str1 - 사업자등록번호 앞 3자리
str2 - 사업자등록번호 중간 2자리
str3 - 사업자등록번호 뒷 5자리
리턴값 :
**********************************************************************************/
function chkRegNo(str1, str2, str3) {
if (chkNumber(str1, "")) return false;
if (chkNumber(str2, "")) return false;
if (chkNumber(str3, "")) return false;
var i;
var iSum = 0;
var L11,L12,L13;
var L21,L22;
var L31,L32,L33,L34,L35;
if (isInteger(str1) && isInteger(str2) && isInteger(str3)) {
L11 = parseInt(str1.substring(0,1));
L12 = parseInt(str1.substring(1,2));
L13 = parseInt(str1.substring(2,3));
L21 = parseInt(str2.substring(0,1));
L22 = parseInt(str2.substring(1,2));
L31 = parseInt(str3.substring(0,1));
L32 = parseInt(str3.substring(1,2));
L33 = parseInt(str3.substring(2,3));
L34 = parseInt(str3.substring(3,4));
L35 = parseInt(str3.substring(4,5));
iSum = (L11*1)%10 + (L12*3)%10 + (L13*7)%10 + (L21*1)%10 + (L22*3)%10 + (L31*7)%10 + (L32*1)%10 + (L33*3)%10;
var i = (L34*5).toString();
var tmp = 0;
if (i < 10 ) tmp = 0;
else tmp = parseInt(i.substring(0,1));
iSum = iSum + (tmp + (i%10));
iSum = iSum%10;
}
if ( ((10-iSum)%10) != parseInt(L35) ) {
return false;
}
return true;
}
var iSum = 0;
var L11,L12,L13;
var L21,L22;
var L31,L32,L33,L34,L35;
if (isInteger(str1) && isInteger(str2) && isInteger(str3)) {
L11 = parseInt(str1.substring(0,1));
L12 = parseInt(str1.substring(1,2));
L13 = parseInt(str1.substring(2,3));
L21 = parseInt(str2.substring(0,1));
L22 = parseInt(str2.substring(1,2));
L31 = parseInt(str3.substring(0,1));
L32 = parseInt(str3.substring(1,2));
L33 = parseInt(str3.substring(2,3));
L34 = parseInt(str3.substring(3,4));
L35 = parseInt(str3.substring(4,5));
iSum = (L11*1)%10 + (L12*3)%10 + (L13*7)%10 + (L21*1)%10 + (L22*3)%10 + (L31*7)%10 + (L32*1)%10 + (L33*3)%10;
var i = (L34*5).toString();
var tmp = 0;
if (i < 10 ) tmp = 0;
else tmp = parseInt(i.substring(0,1));
iSum = iSum + (tmp + (i%10));
iSum = iSum%10;
}
if ( ((10-iSum)%10) != parseInt(L35) ) {
return false;
}
return true;
}
//법인등록번호 체크
function vndr_reg_no_chk(vndr_reg_no1,vndr_reg_no2,vndr_reg_no3){
var v_vndr_reg_no1 = 0;
var v_vndr_reg_no2 = 0;
var v_vndr_reg_no3 = 0;
var v_vndr_reg_no4;
var vndr_reg_chk;
var str= vndr_reg_no1 + vndr_reg_no2 + vndr_reg_no3;
var j = 0;
object = new Array(13)
for(var i=0;i < 12;i++) {
++j;
object[i] = str.substring(i,i+1)
if ( j % 2 == 0 )
v_vndr_reg_no1 = v_vndr_reg_no1 + parseInt(object[i]) * 2;
else
v_vndr_reg_no1 = v_vndr_reg_no1 + parseInt(object[i]) * 1;
}
v_vndr_reg_no2 = Math.floor(v_vndr_reg_no1 / 10); //몫
v_vndr_reg_no3 = parseInt(v_vndr_reg_no1 % 10); //나머지
var chkdigit = str.substring(12, 13); //오류검색번호
vndr_reg_chk = 10 - v_vndr_reg_no3;
if ( vndr_reg_chk == 10 ) vndr_reg_chk = 0;
if ( chkdigit == vndr_reg_chk ) {
return true;
}
else {
return false;
}
}
function vndr_reg_no_chk(vndr_reg_no1,vndr_reg_no2,vndr_reg_no3){
var v_vndr_reg_no1 = 0;
var v_vndr_reg_no2 = 0;
var v_vndr_reg_no3 = 0;
var v_vndr_reg_no4;
var vndr_reg_chk;
var str= vndr_reg_no1 + vndr_reg_no2 + vndr_reg_no3;
var j = 0;
object = new Array(13)
for(var i=0;i < 12;i++) {
++j;
object[i] = str.substring(i,i+1)
if ( j % 2 == 0 )
v_vndr_reg_no1 = v_vndr_reg_no1 + parseInt(object[i]) * 2;
else
v_vndr_reg_no1 = v_vndr_reg_no1 + parseInt(object[i]) * 1;
}
v_vndr_reg_no2 = Math.floor(v_vndr_reg_no1 / 10); //몫
v_vndr_reg_no3 = parseInt(v_vndr_reg_no1 % 10); //나머지
var chkdigit = str.substring(12, 13); //오류검색번호
vndr_reg_chk = 10 - v_vndr_reg_no3;
if ( vndr_reg_chk == 10 ) vndr_reg_chk = 0;
if ( chkdigit == vndr_reg_chk ) {
return true;
}
else {
return false;
}
}
/*********************************************************************************
함수명 : chkJuminNo
기 능 : 주민번호 체크 함수
인 수 : str1 - 주민번호 앞자리
str2 - 주민번호 뒷자리
리턴값 :
**********************************************************************************/
function chkJuminNo(str1, str2) {
if (chkNumber(str1, "") == false) return false;
if (chkNumber(str2, "") == false) return false;
var x, y, z;
var L11,L12,L13,L14,L15,L16;
var L21,L22,L23,L24,L25,L26,L27;
var L11,L12,L13,L14,L15,L16;
var L21,L22,L23,L24,L25,L26,L27;
L11 = parseInt(str1.substring(0,1));
L12 = parseInt(str1.substring(1,2));
L13 = parseInt(str1.substring(2,3));
L14 = parseInt(str1.substring(3,4));
L15 = parseInt(str1.substring(4,5));
L16 = parseInt(str1.substring(5,6));
L21 = parseInt(str2.substring(0,1));
L22 = parseInt(str2.substring(1,2));
L23 = parseInt(str2.substring(2,3));
L24 = parseInt(str2.substring(3,4));
L25 = parseInt(str2.substring(4,5));
L26 = parseInt(str2.substring(5,6));
L27 = parseInt(str2.substring(6,7));
x = (L11*2) + (L12*3) + (L13*4) + (L14*5) + (L15*6) + (L16*7) + (L21*8) + (L22*9) + (L23*2) + (L24*3) + (L25*4) + (L26*5);
y = x % 11;
z = 11 - y;
L12 = parseInt(str1.substring(1,2));
L13 = parseInt(str1.substring(2,3));
L14 = parseInt(str1.substring(3,4));
L15 = parseInt(str1.substring(4,5));
L16 = parseInt(str1.substring(5,6));
L21 = parseInt(str2.substring(0,1));
L22 = parseInt(str2.substring(1,2));
L23 = parseInt(str2.substring(2,3));
L24 = parseInt(str2.substring(3,4));
L25 = parseInt(str2.substring(4,5));
L26 = parseInt(str2.substring(5,6));
L27 = parseInt(str2.substring(6,7));
x = (L11*2) + (L12*3) + (L13*4) + (L14*5) + (L15*6) + (L16*7) + (L21*8) + (L22*9) + (L23*2) + (L24*3) + (L25*4) + (L26*5);
y = x % 11;
z = 11 - y;
'Programming > Java Script' 카테고리의 다른 글
새로고침 방지 (0) | 2010.06.24 |
---|---|
[스크랩] 문자 관련 함수 (0) | 2010.03.26 |
[스크랩] 숫자 관련 함수 (0) | 2010.03.26 |
[스크랩] 날짜 관련 함수 (0) | 2010.03.26 |
[스크랩] 금액 관련 함수 (0) | 2010.03.26 |
[스크랩] 팝업 관련 함수 (0) | 2010.03.26 |
[스크랩] 유용한 함수들 (0) | 2010.03.26 |
항상따라다니는 Div창 & 자동 창 크기 설정 스크립트 (0) | 2010.03.23 |
Window 객체 속성 (0) | 2010.03.23 |
윈도우 창 크기 알아오기 (0) | 2010.03.22 |