티스토리 뷰

 

원본 : https://m.blog.naver.com/PostView.nhn?blogId=yesdouble&logNo=130152964039&proxyReferer=https:%2F%2Fwww.google.com%2F

/* 댓글 입력 글자 수 체크 및 유효검사 */
    $('.remaining').each(function () {      
        // count 정보 및 count 정보와 관련된 textarea/input 요소를 찾아내서 변수에 저장한다.       
        var $maxcount = $('.maxcount', this);       
        var $count = $('.count', this);       
        var $input = $(this).prev();       
        // .text()가 문자열을 반환하기에 이 문자를 숫자로 만들기 위해 1을 곱한다.       
        var maximumByte = $maxcount.text() * 1;       
       
        // update 함수는 keyup, paste, input 이벤트에서 호출한다.       
        var update = function (){       
	        var before = $count.text() * 1;       
	        var str_len = $input.val().length; 
	        var cbyte = 0;
	        var li_len = 0;
	            
	        for(i=0;i<str_len;i++){
	        	var ls_one_char = $input.val().charAt(i);  
	        	
				if(escape(ls_one_char).length > 4){
			      cbyte +=2; //한글이면 2를 더한다
			    }else{
			      cbyte++; //한글아니면 1을 다한다
			    }
				
				if(cbyte <= maximumByte){
			      li_len = i + 1;
			    }
	        }
	                
			// 사용자가 입력한 값이 제한 값을 초과하는지를 검사한다.       
			if (parseInt(cbyte) > parseInt(maximumByte)) {          
			     gostart('허용된 글자수가 초과되었습니다.\r\n\n초과된 부분은 자동으로 삭제됩니다.'); 
			     
			     var str = $input.val();
			     var str2 = $input.val().substr(0, li_len);         
	   			 $input.val(str2);
	       
	          	var cbyte = 0;    
	            for(i=0;i<$input.val().length;i++){
	            	var ls_one_char = $input.val().charAt(i);  
			        if(escape(ls_one_char).length > 4){
			            cbyte +=2; //한글이면 2를 더한다
		            }else{
		            	cbyte++; //한글아니면 1을 다한다
		            }
	            }
	        }       
	
	        $count.text(cbyte);       
        };       
       
       // input, keyup, paste 이벤트와 update 함수를 바인드한다       
        $input.bind('input keyup keydown paste change', function () {
            setTimeout(update, 0) 
        });  
       
        update();   
	});
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
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
글 보관함