728x90
반응형

/*
 textbox에서 복사해서 붙여넣기 할 경우 ' " 특수기호를  치환
 */
 function controlKey(){   

 

//한글 입력시 ' " 키 막음
   //한글은 2바이트로 onkeydown up press이벤트에서 키값이 229로 정상적으로 처리가 안됨
   //이벤트가 발생한 element정보를 가져와 화면의 폼 전체 수 만큼 루프 돌면서 처리
   var name = window.event.srcElement.name;   
   var formlen = document.forms.length;
   for(var i=0;i<formlen;i++){
     var oForm = document.forms[i].elements;
     if(typeof(oForm[name]) != "undefined"){

     //폼이름 같은게 여러게 있는 경우
     if(typeof(oForm[name].length) != "undefined"){
      
      for(var j=0; j<oForm[name].length; j++){
       var chkVal = oForm[name][j].value;
       if(chkVal.indexOf("'")>-1 || chkVal.indexOf("\"")>-1){     
        oForm[name][j].value = chkVal.substring(0,chkVal.length-1);
        }  
      }
     }else{
      var chkVal = oForm[name].value;
    
      if(chkVal.indexOf("'")>-1 || chkVal.indexOf("\"")>-1){     
       oForm[name].value = chkVal.substring(0,chkVal.length-1);
      }
     }     
     }
   }


  

//화면의 모든 폼 , 객체를 가져옴 화면에서 입력값에 특수기호 있을시 치환  

  if( ( event.shiftKey == true && event.keyCode == 222 ) || event.keyCode == 222 ){

    var formlen = document.forms.length;
    for(var i=0;i<formlen;i++){
     var eleLen = document.forms[i].elements.length;
     for(var j=0;j<eleLen;j++){
      var chkVal = document.forms[i].elements[j].value;
      
      if(chkVal.indexOf("'")>-1 || chkVal.indexOf("\"")>-1){
      
       document.forms[i].elements[j].value = chkVal.substring(0,chkVal.length-1);
      }
     }
    }   
    
  }
  
  //붙여넣기 할때 특수기호 제어
        if( event.ctrlKey == true && event.keyCode == 86 ){

            if (window.clipboardData){
   
    var clipData = window.clipboardData.getData('Text');     
   
    if( clipData.indexOf("'")>-1 || clipData.indexOf("\"") > -1 ){
       clipData = clipData.replace(/\'/g,"'");   
     clipData = clipData.replace(/\"/g,"'");
     window.clipboardData.setData('Text', clipData);     
    }
   }
        }  
  }

  document.onkeyup = controlKey;

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,