/**
* @author SujeongYeom
*/
$(document).ready(function(){
/******* 멤버 추가 취소 ************/
$("td img").bind("click", fnDeleteField)
/******* 멤버 추가 *************/
$(".btn_mem_add").click(function(){
var $addableMemNum =parseInt($(".c97ad49").html(),10);
var $addedMemNum = $(".iv_module").size();
/** 1명 -> 2명일 때 X표시 첫번째 라인에 추가 **/
if($addedMemNum == 1)
$("td img").toggle();
if($addableMemNum > $addedMemNum){
if($(".i_phone").length > 0) {
/* 전화번호 초대 */
$(".iv_module:last").clone(false) /* SelectBox에 걸린 이벤트를 그대로 복사해서 붙여넣기하면 문제 발생하므로 방지.
그 외 element에 해당하는 이벤트는 각각 bind 해야 함 */
.find("td img").bind("click", fnDeleteField)
.end()
/* 이전 필드 복사 하면서 같이 복사 된 불필요한 속성값 제거 */
.find(".select1").removeAttr("style").removeAttr("sb")
.siblings("div:eq(0)").remove()
.end()
.end()
/* 국가 선택 값 초기화 */
.find(".select1")
.siblings(".noti_alert_red02").hide()
.end()
.val("")
.bind("change", fnCheckNation)
.selectbox() // select box style
.end()
/* 전화 번호 입력 값 초기화 */
.find("input.i_phone").attr({"value":""})
.bind("keyup blur", {phoneForm:false},fnCheckPhoneNumber)
.blur()
.end()
.appendTo(".invite_infomaion");
} else{
/* 이메일 초대 */
$(".iv_module:last").clone(false)
.find("input.i_email").bind("blur",fnCheckEmailForm)
.end()
.find("td img").bind("click", fnDeleteField)
.end()
.find("input.i_email").attr({"value":""})
.siblings(".noti_alert_red02").hide()
.end()
.end()
.appendTo(".invite_infomaion");
}
$("[placeholder]").placeholder();
}
});
/********* 전화 번호 입력 값 형식 확인 *************/
$("input.i_phone").bind("keyup blur", {phoneForm:false}, fnCheckPhoneNumber);
$("input.i_phoneForm").bind("keyup blur", {phoneForm:true},fnCheckPhoneNumber);
$(".select1").bind("change", fnCheckNation);
/********* 이메일 입력 값 형식 확인 *************/
$("input.i_email").bind("blur", fnCheckEmailForm);
/********* 프로필 사용자 입력 값 형식 확인 *************/
$("input.i_user").bind("keyup blur", function(event){
var $inputVal = $(this).val();
/*Byte 확인*/
if(stringByteSize($inputVal) > _byteLimit_user_name)
$(this).val($inputVal.substring(0,_byteLimit_user_name)).blur();
$(this).siblings(".noti_alert_red02")
.toggle(!($inputVal != ''));
});
/** 사진 첨부 **/
$(".mypic .btn_gray_01").click(function(){
$("input[type=file]").click();
});
/** 그룹코드 **/
$("span .i_code").bind("keyup",function(event){
var inputBox = $("span .i_code");
var currentBoxNumber = inputBox.index(this);
var inputValue = inputBox[currentBoxNumber].value;
if(!(inputValue == inputValue.match(/^[0-9]+$/))){
inputBox[currentBoxNumber].value = '';
return;
}
if(inputValue.length == 1 && inputBox[currentBoxNumber + 1] != null) {
inputBox[currentBoxNumber + 1].focus();
}
});
});
/** 입력 필드 제거 **/
function fnDeleteField() {
var $inputSize = $(".iv_module").size();
if( $inputSize > 1)
$(this).parents(".iv_module").remove();
if($inputSize == 2)
$("td img").toggle();
}
/** 전화 번 호 입력 값 확인 **/
function fnCheckPhoneNumber(event){
var $inputVal = $(this).val();
/*Byte 확인*/
if(stringByteSize($inputVal) > _byteLimit_phone_number)
$(this).val($inputVal.substring(0,_byteLimit_phone_number)).blur();
$inputVal = $(this).val();
if("blur" == event.type) {
var $selEle = $(this).parent().parent().find(".select1");
$selEle.siblings(".noti_alert_red02")
.toggle(($inputVal != '' && $selEle.val() == ""));
}
if(event.data.phoneForm){
$(this).parent().find(".noti_alert_red02")
.toggle($inputVal != '' && fnCheckPhoneForm($inputVal));
}else {
$(this).parent().find(".noti_alert_red02")
.toggle(fnCheckNumber($inputVal));
}
}
/** 국가 선택 여부 확인 **/
function fnCheckNation() {
var $inputEle = $(this).parent().parent().find(".i_phone");
$(this).siblings(".noti_alert_red02")
.toggle( $inputEle.val() != '' && $(this).val() == '');
}
/****************************** 숫자 입력값 확인 ****************************************/
function fnCheckNumber(param){
return new RegExp('[^0-9]+','g').test(param);
}
/****************************** 전화번호 입력값 형식 확인 *******************************/
function fnCheckPhoneForm(param){
/* 2012.06.14 현재 확인 포맷
* 000-0000-0000
* 0000-000-000
* 00-000-0000
* 00-00000-000000
*/
var phoneNumberPattern = /^((\+[1-9]{1,4}[ \-]*)|(\([0-9]{2,3}\)[ \-]*)|([0-9]{2,4})[ \-]*)*?[0-9]{3,4}?[ \-]*[0-9]{3,4}?$/;
return (!phoneNumberPattern.test(param) );
}
function fnCheckEmailForm(event){
var $inputVal = $(this).val();
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
$(this).parent().find(".noti_alert_red02")
.toggle(!emailReg.test($inputVal));
}
'Dev > Orvercome 3sec memory' 카테고리의 다른 글
MySQL의 BETWEEN 조건절 결과 데이터 범위 (0) | 2013.03.07 |
---|---|
Server to Server Http POST 요청 시 파라미터 처리방법 2가지와 Entity 클래스 (4) | 2013.03.06 |
IE9으로 테이블 표시할 때 칸(Cell) 밀림 현상 해결 (0) | 2013.01.03 |
Data from X509Certificate (0) | 2012.10.31 |
Facebook "Like"버튼 별 & "Share" 기능의 내보낸 글 구성의 차이점 (1) | 2011.10.07 |