블로그 이미지
baragi76

카테고리

분류 전체보기 (115)
생활 (10)
My Story (34)
My Album (1)
HomePage (0)
Hobbies (21)
Develop (42)
Utility (1)
Project (6)
10-23 02:20
Total241,520
Today0
Yesterday17

공지사항

달력

« » 2020.10
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

안정적인 DNS서비스 DNSEver

브라우저 버전별로 닫는 코드가 틀리다고 하는데...
이런 코드가 맞을 라나 모르겠넴...

 window.document.write("<!--[if IE 6]>");
 window.document.write("<script>self.opener=self;self.close();</script>");
 window.document.write("<![endif]-->");
 window.document.write("<!--[if IE 7]>");
 window.document.write("<script>window.open('about:blank','_self').close();</script>");
 window.document.write("<![endif]-->");
Posted by baragi76

댓글을 달아 주세요

<!--

// radio 또는 checkbox가 배열또는 특정문자열의 반복으로 구성된 값을 넘길때 submit()

// 체크된 값은 "y", 그렇지 않은 값은 "n"을 넘긴다.

// ex) <input type='checkbox' name='chkVal_1'>

function fSubmit() {

var f=document.form;

for (var i=0; i<f.elements.length; i++) {

if (f.elements[i].name.substr(0,6) == 'chkVal') {

if (f.elements[i].checked == false) f.elements[i].value = 'n';

else f.elements[i].value = 'y';

}

}

f.submit();

}



// 팝업을 오픈한 동시에 부모창에서 팝업으로 submit

// <form name='fm'>에서 실행시켜 result.html로 넘긴다

function popSubmit(f) {

var pop=window.open("","pop_submit","top=10,left=10,toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=yes,width=200,height=200);

f.method = "post";

f.action = "result.html";

f.target = "pop_submit";

f.submit();

pop.focus();

}



// 부모창의 값을 특정스크립트(result.html)에 넘긴다(팝업이 parent를 조절)

function parentSubmit(f) {

f.method = "post";

f.action = "result.html";

f.target = "_self";

f.submit();

self.close();

}



// 한 페이지에 선택될 갯수를 저장할 전역변수

// 한 페이지에 최대 4개를 선택한다.

var Select_Count = 0;

// onClick 이벤트실행시 수행되며 onChange 이벤트에서 이전값을 저장하기위한 전역변수

var Click_Value;



// 노출 radio 버턴의 패턴을 바꿀때

function DisplayChange(card_id,val) {

var opt=eval("document.form.chkDisplay_"+card_id);

var sel=eval("document.form.chkSelect_"+card_id);

var ordText=eval("OrderText_"+card_id);



for (var i=0; i<opt.length; i++) {

if ((opt[i].checked == true) && (val == 1)) {

if (Select_Count >= 4) {

alert('Over !!!');

opt[i].checked = false;

opt[i].checked = true;

return;

}

sel.style.color='#c4018a';

sel.style.background.color='#f8f7f7';

sel.disabled = false;

if (sel.options[sel.selectedIndex].value > 0) {

ordText.style.display='';

Select_Count++;

} else ordText.style.display='none';

} else if ((opt[i].checked == false) && (val == 0)) {

sel.disabled = true;

ordText.style.display='none';

if (sel.options[sel.selectedIndex].value > 0) Select_Count--;

ordText.style.display='none';

}

break;

}

}



// select 값이 바뀌면 실행되는 루틴

function OrderChange(card_id) {

var sel=eval("document.form.chkSelect_"+card_id);

var ordText=eval("OrderText_"+card_id);

if (sel.value == 0) {

Select_Count--;

ordText.style.display='none';

return;

} else {

if (Select_Count < 4) {

if (Click_Value > 0) return;

else {

Select_Count++;

ordText.style.display='';

return;

}

} else {

if (Click_Value > 0) return;

else {

alert('Over !!!');

sel.value=Click_Value;

return;

}

}

}

}



// select 박스를 클릭하면 실행되는 루틴(전역변수에 현재 클릭된 값을 저장한다)

function OrderClick(card_id) {

var sel=eval("document.form.chkSelect_"+card_id);

Click_Value = sel.value;

}



// 파일 체크박스가 1개라도 체크되어 있으면 true 리턴
function check_confirm(){

objForm = document.frmFile;
var count = 0;
if (objForm.chk != undefined){
var length = objForm.chk.length;
if(length > 1){ //체크박스가 여러개 일경우
for(var i=0; i<length; i++){
if(frmFile.chk[i].checked)
count++;
}
}else{ //체크박스가 한개일경우
if(frmFile.chk.checked)
count++;
}
}
return count;
}


// 최상위 체크 로직(chars로 넘긴 값이 있다면 true)

function containsCharsOnly(input,chars) {

for (var inx = 0; inx < input.value.length; inx++) {

if (chars.indexOf(input.value.charAt(inx)) == -1)

return false;

}

return true;

}





// 최상위 체크 로직(chars로 넘긴 값이 있다면 false)

function containsChars(input,chars) {

for (var inx = 0; inx < input.value.length; inx++) {

if (chars.indexOf(input.value.charAt(inx)) != -1)

return true;

}

return false;

}







// 숫자 체크

function isNum(input) {

var chars = "0123456789";

return containsCharsOnly(input,chars);

}







// 이름체크

function nameCheck(input){

var chars = '0123456789~!@#$%^&*()_-+=|{}[]<>,./?';

return containsChars(input,chars);

}







// 전화 번호 Check

function isPhoneCheck(input) {

var chars = "0123456789( ).-,<>{}[]_~";

return containsCharsOnly(input,chars);

}







// 영문 판별

function isPhoneCheck(input) {

var chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

return containsCharsOnly(input,chars);

}







// 영숫자 판별

function isPhoneCheck(input) {

var chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

return containsCharsOnly(input,chars);

}







// 입력값이 숫자,대시(-)로 되어있는지 체크

function isNumDash(input) {

var chars = "-0123456789";

return containsCharsOnly(input,chars);

}







// 입력값이 숫자,콤마(,)로 되어있는지 체크

function isNumComma(input) {

var chars = ",0123456789";

return containsCharsOnly(input,chars);

}







// 입력값이 사용자가 정의한 포맷 형식인지 체크

// 자세한 format 형식은 자바스크립트의 ''regular expression''을 참조

function isValidFormat(input,format) {

if (input.value.search(format) != -1) {

return true; file://올바른 포맷 형식

}

return false;

}







/**

* 입력값이 이메일 형식인지 체크

* ex) if (!isValidEmail(form.email)) {

* alert("올바른 이메일 주소가 아닙니다.");

* }

*/

function isValidEmail(input) {

// var format = /^(\S+)@(\S+)\.([A-Za-z]+)$/;

var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;

return isValidFormat(input,format);

}







/**

* 입력값이 전화번호 형식(숫자-숫자-숫자)인지 체크

*/

function isValidPhone(input) {

var format = /^(\d+)-(\d+)-(\d+)$/;

return isValidFormat(input,format);

}







// 콤마 없애기

function removeComma(input) {

return input.value.replace(/,/gi,"");

}







// 문자 변환 함수

function alterString(str,before,after) {

var returnStr = "";

for(i = 0; i < str.length; i++) {

value = str.charAt(i);

index = before.indexOf(value);

if(index >= 0) value = after.charAt(index);

returnStr += value;

}

return returnStr;

}







// 소 --> 대문자 변환 함수

function ToUpper(arg) {

var str1 = "abcdefghijklmnopqrstuvwxyz";

var str2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

return alterString(arg,str1,str2);

}







// 대 --> 소문자 변환 함수

function ToLower(arg){

var str1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

var str2 = "abcdefghijklmnopqrstuvwxyz";

return alterString(arg,str1,str2);

}







// 반각 문자를 전각문자로

function convert2ByteChar(x_char) {

var x_2byteChar = ""; //컨버트된 문자

var c = x_char.charCodeAt(0);

if(32 <= c && c <= 126) { //전각으로 변환될수 있는 문자의 범위

if(c == 32) { //스페이스인경우 ascii 코드 32

x_2byteChar = unescape("%uFFFC");

} else {

x_2byteChar = unescape("%u"+gf_DecToHex(c+65248));

}

}

return x_2byteChar;

}







// 10진수를 16진수로

function gf_DecToHex(x_dec) {

var x_Hex = new Array();

var x_serial = 0;

var x_over16 = x_dec;

var x_tempNum = 0;

while(x_dec > 15) {

var x_h = x_dec % 16; //나머지

x_dec = parseInt(x_dec/16); //몫

x_Hex[x_serial++] = (x_h > 9 ? String.fromCharCode(x_h + 55) : x_h); //16진수코드변환

}







//마지막은 몫의 값을 가짐

x_Hex[x_serial++] = (x_dec > 9 ? String.fromCharCode(x_dec + 55) : x_dec); //16진수코드변환



//몫,나머지,나머지,.....

var retValue = "";

for(var i=x_Hex.length ; i>0 ;i--) {

retValue += x_Hex[i-1];

}

return retValue;

}







// input box에 space,  등 만으로 넣고 장난 칠때 이들 문자 뺀 길이를 통해 유효성 체크한다...

function CheckStr(strOriginal, strFind, strChange){

var position, strOri_Length;

position = strOriginal.indexOf(strFind);

while (position != -1){

strOriginal = strOriginal.replace(strFind, strChange);

position = strOriginal.indexOf(strFind);

}

strOri_Length = strOriginal.length;

return strOri_Length;

}







// 체크 박스에 체크가 되어 있으면 true

function checkValidator(str) {

if(str.checked) return true;

else return false;

}







// 비밀번호는 4자 등 최대 최소 길이를 파람으로 주고 처리...

function checkLength(str,minLng,maxLng){

var ckstr = str.value.length;

if (parseInt(ckstr) < parseInt(minLng) || parseInt(ckstr) > parseInt(maxLng)) return false;

return true;

}







// 숫자만 받아서 아니면 메세지 보여 주는

function onlyNumber(objEv) {

if(!isNum(objEv)){

alert("숫자만 입력가능합니다.");

objEv.value = "";

objEv.focus();

return;

}

}







// 숫자를 체크하다가 6자 등 원하는 만큼 이동후 다음 input 박스로 이동 시키는...

function goJump(fname, len, goname){

onlyNumber(fname);

if (document.all[fname].value.length == len) document.all[goname].focus();

}







// 주민등록번호 체크 로직

function check_ResidentNO(str_f_num,str_l_num){

var i3=0

for (var i=0;i<str_f_num.length;i++){

var ch1 = str_f_num.substring(i,i+1);

if (ch1<'0' || ch1>'9') i3=i3+1;

}

if ((str_f_num == '') || ( i3 != 0 )) return false;

var i4=0;

for (var i=0;i<str_l_num.length;i++){

var ch1 = str_l_num.substring(i,i+1);

if (ch1<'0' || ch1>'9') i4=i4+1;

}

if ((str_l_num == '') || ( i4 != 0 )) return false;

if(str_f_num.substring(0,1) < 4) return false;

if(str_l_num.substring(0,1) > 2) return false;

if((str_f_num.length > 7) || (str_l_num.length > 8)) return false;

if ((str_f_num == '72') || ( str_l_num == '18')) return false;



var f1=str_f_num.substring(0,1)

var f2=str_f_num.substring(1,2)

var f3=str_f_num.substring(2,3)

var f4=str_f_num.substring(3,4)

var f5=str_f_num.substring(4,5)

var f6=str_f_num.substring(5,6)

var hap=f1*2+f2*3+f3*4+f4*5+f5*6+f6*7

var l1=str_l_num.substring(0,1)

var l2=str_l_num.substring(1,2)

var l3=str_l_num.substring(2,3)

var l4=str_l_num.substring(3,4)

var l5=str_l_num.substring(4,5)

var l6=str_l_num.substring(5,6)

var l7=str_l_num.substring(6,7)

hap=hap+l1*8+l2*9+l3*2+l4*3+l5*4+l6*5

hap=hap%11

hap=11-hap

hap=hap%10

if (hap != l7) return false;

return true;

}







// 바이트 구하기

function getByteLen(str){

return(str.length+(escape(str)+"%u").match(/%u/g).length-1);

}







// url 가져오기

function getUrlAddress(){

var pageUrl = document.location;

pageUrl = new String(pageUrl);

return pageUrl.substring(0,pageUrl.lastIndexOf("/"));

}







// 오른마우스 금지, 나중에 해당 주석 풀고 사용

function rightbutton(e){

if (navigator.appName == 'Netscape' && (e.which == 3 || e.which == 2))

return false;

else if (navigator.appName == 'Microsoft Internet Explorer' && (event.button == 2 || event.button == 3))

{

alert("죄송합니다!! 정보무단복제를 막기 위하여 오른쪽 마우스 사용을 허용하지 않습니다.");

return false;

}

return true;

}







//document.onmousedown=rightbutton;



// 컨트롤 키 금지, 나중에 해당 주석 풀고 사용

function checkCtl(){

if (document.all){

if(event.keyCode==17) {

alert("죄송합니다!! 컨트롤키 사용을 허용하지 않습니다.");

return false;

}

}

}







//document.onkeydown = checkCtl;



function setCookie(name,value) {

document.cookie = name+"="+escape(value)+";path=/;domain=.kkaok.pe.kr;";

}



function setCookie(name,value, expires) {

document.cookie = name + "=" + escape(value) +

"; path=/; expires=" + expires.toGMTString();

}



function getCookie(Name) {

var search = Name + "="

if (document.cookie.length > 0) { // 쿠키가 설정되어 있다면

offset = document.cookie.indexOf(search)

if (offset != -1) { // 쿠키가 존재하면

offset += search.length

// set index of beginning of value

end = document.cookie.indexOf(";", offset)

// 쿠키 값의 마지막 위치 인덱스 번호 설정

if (end == -1)

end = document.cookie.length

return unescape(document.cookie.substring(offset, end));

}

}

}







String.prototype.trim = function(){

return this.replace(/(^\s*)|(\s*$)/gi, "");

}



//문자 바꾸기, 사용법 var str = 문자열.replaceAll("a", "1");

String.prototype.replaceAll = function(str1, str2) {

var temp_str = "";

if (this.trim() != "" && str1 != str2) {

temp_str = this.trim();

while (temp_str.indexOf(str1) > -1){

temp_str = temp_str.replace(str1, str2);

}

}

return temp_str;

}

//-->
Posted by baragi76

댓글을 달아 주세요

XML 태그중에 첫번째 Member 태그의 속성중 name 속성이 있는지 찾아서
없으면 name 속성을 추가하며 "담당"이라는 값으로 설정하는 코드 ( JS 코드 )

var memberElement = xmlDoc.getElementsByTagName("Member");
if( memberElement.item(0).getAttribute("name") == null )
{
        var attr = xmlDoc.createAttribute("name");
        attr.value = "담당";
        memberElement.item(0).setAttributeNode(attr);
}
Posted by baragi76

댓글을 달아 주세요


function NumberOnly()
{
        var input_key = event.keyCode;
        if (!(IsNumber( input_key )))
        {       
                event.keyCode = '0';
                return false;
        }
}
function IsNumber( inputValue )
{
                if (inputValue >= '48' && inputValue <= '57') return true;
                else         return false;
}
function _Currency(num)
{        
        if(num == "" || num == 0)
        {
                return num;        
        }
        var dotPos = (num+"").split(".");
        var dotU = dotPos[0];
        var dotD = dotPos[1];
        if (Number(dotU) < 0)
        {
                dotU  = (Number(dotU) * -1) + "";
                var minus = true
        }
        else
        {
                var minus = false
        }
        var commaFlag = dotU.length%3
        if(commaFlag)
        {
                var out = dotU.substring(0, commaFlag)
                if (dotU.length > 3)
                {
                        out += ",";
                }
        }
        else
        {
                var out = "";
        }
        for (var i=commaFlag; i < dotU.length; i+=3)
        {
                out += dotU.substring(i, i+3);
               
                if( i < dotU.length-3)
                {
                        out += ",";
                }
        }
       
        if(minus)
        {
                out = "-" + out;
        }
       
        if(dotD)
        {
                out +=  "." + dotD ;
        }
       
        return out;
}
function _Reverse(str)
{
        if(str == null)
                return null;
        var s = str;
        var r = '';
        for(i=str.length; i>0; i--)
                r += s.charAt(i-1);
        return r;
}
function _CurrencyClear(s)
{
        var cntArray = new Array();
        for( var i = 0 ; i < s.length ; i++)
        {
                cntArray[i] = s.indexOf(",");
                s = s.replace(",","");
        }
        return s;
}
function setCurrency(objName)
{        
        var input = document.getElementById(objName);
        if ( input.value.length == 0 )
        {
                return;
        }
        var amt = 0;
        if(input.value.length != 0 )
        {
                amt = fillZero(input.value, input.format);
        }
        input.value =        _Currency(amt);
}
function focusCurrency(objName)
{
        var input = document.getElementById(objName);
        if ( input.value.length == 0 )
        {
                return;
        }
        input.value = Number(_CurrencyClear(input.value));
        input.select();
}
function fillZero(input, type)
{
        //input이 숫자타입으로 넘어올 때
        //에러가 남. 그래서 스트링 타입으로 변환해야 함
        if ( !type )
        {
                return input+"";
        }
        var format = type.split('.');
        var value = (input+"").split('.');
       
        if ( Number(format[1]) == 0 )
        {
                return input+"";
        }       
        if (!value[1])
        {       
                value[1] = "";
        }
       
        //소수점 이하가 포맷보다 클 경우는
        //그냥 반올림하여 리턴한다
        if (value[1].length > Number(format[1]))
        {
                 return (Number(input).toFixed(Number(format[1])));
        }
        //소수점 자리수에 맞게 '0'을 채워준다
        //예를 들면 데이타 형식이 5.2일 경우
        //입력값이 '50'이면 '50.00'으로 리턴한다
        while ( value[1].length < Number(format[1]) )
        {
                value[1] += "0";
        }               
       
        //value[0]을 Number 객체로 변환
        //000.000 같은 경우를 0.000으로 변환하기 위해서
        return (Number(value[0]) + "." + value[1]);
}
Posted by baragi76

댓글을 달아 주세요


LotusScript의 Trim 함수 많이 쓰시죠?
JavaScript에서도 가끔(?) 사용되는 함수입니다.

Trim~~
앞뒤 공백을 제거하고 중간에 겹쳐진 스페이스를 하나의 스페이스로...

---------------------------------------------------------------------------------------------------
function Trim(sValue)
{
        sValue = String(sValue);
        // 다중 공백 제거
        for( ; sValue.indexOf("  ") != -1 ; )
                sValue = sValue.replace( "  ", " " );
       
        // 앞 공백 제거
        if( sValue.indexOf(" ") == 0 )
                sValue = sValue.substring( 1, sValue.length );

        // 뒤 공백 제거
        if( sValue.lastIndexOf(" ") == sValue.length -1 )
                sValue = sValue.substring( 0, sValue.length-1 );

        return sValue;
}
Posted by baragi76

댓글을 달아 주세요


사용자가 E-Mail 주소를 형식에 맞게끔 입력했는지 체크하는 자바스크립트 코드

<script language="javascript">
function isEmail(str) {
// regular expression 지원 여부 점검
var supported = 0;
if (window.RegExp) {
var tempStr = "a";
var tempReg = new RegExp(tempStr);
if (tempReg.test(tempStr)) supported = 1;
}
if (!supported)
return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
return (!r1.test(str) && r2.test(str));
}
</script>
Posted by baragi76

댓글을 달아 주세요