JAVASCRIPT&JQUERY

제이쿼리 nav바 토글버튼 만들기(EMP/detail)

9400 2023. 2. 8. 11:48

nav바 

 

 

detail 쿼리문 

	SELECT  A.EMP_NUM, A.EMP_ADDR, A.EMP_PHE, A.EMP_NM, A.EMP_PAY, A.EMP_MJ_NUM
		FROM EMP A
		WHERE A.EMP_NUM = 'EMP005' --본인
		OR A.EMP_NUM = (
		        SELECT B.EMP_MJ_NUM FROM EMP B WHERE B.EMP_NUM = 'EMP005' --매니저찾기
		);

 

 

nav바

<ul class="nav nav-tabs">
  <li class="nav-item">
    <a class="nav-link link active" data-id="employee" aria-current="page" href="#">직원</a>
  </li>
  <li class="nav-item">
    <a class="nav-link link" data-id="manager" href="#" >관리자</a>
  </li>
</ul>

스크립트

	$(".nav-link").on('click',function(){
		//toggleClass()메서드는 해당 클래스를 토글함
		$(".link").toggleClass("active");
		//removeAttr() : 선택한 ㅇ요송에서 하나 이상의 특성을 제거함
		$(".link").removeAttr("aria-current");
		//attr() : 선택한 요송의 속성을 추가함
		$(this).attr("aria-current","page");
		//this : link 클래스는 2개. 그 중에서 클린한 바로 그 요소
		let id =$(this).data("id");  //employee 또는 manager
		if(id=="employee"){
			$('#employee').css('display','block');
			$('#manager').css('display','none');
		}else{ //관리자 탭의 경우 관리자 div를 보여주고, 직원 div는 hidden 처리함
			$('#employee').css('display','none');
			$('#manager').css('display','block');
		}
		
	});
});

 

직원탭과 관리자탭은 한페이지에 있어야함 

직원탭 (id="employee")

<div class="bd-example" id="employee">
<form:form modelAttribute="empVO" action="/emp/createPost" method="post" class="row g-3">
	<!-- 직원번호 시작 -->
  <div class="col-md-6">
    <label for="empNum" class="form-label">직원번호</label>
    <form:input type="text" path="empNum" class="form-control"/>
      <input type="hidden" id="empNumAjax" class="form-control" />  
  </div>
  
  <div class="col-md-4">
    <label for="inputZip" class="form-label">우편번호</label>
    <input type="text" class="form-control" id="inputZip" name="inputZip" readonly>
    <button type="button" style="float:left;" id="btnPostno" class="btn btn-outline-danger">우편번호검색</button>
  </div>
  
  <div class="col-12">
    <label for="address" class="form-label">주소</label>
    <input type="text" class="form-control" id="address" name="address" placeholder="주소를 입력해주세요" readonly/>
  </div>
  
  <div class="col-12">
    <label for="inputAddress2" class="form-label">상세주소</label>
    <input type="text" class="form-control" id="detAddress" name="detAddress" />
  </div>
  <div class="col-md-6">
    <label for="empPhe" class="form-label">연락처</label>
    <input type="text" class="form-control" id="empPhe" name="empPhe">
    <form:errors path="empPhe"></form:errors>
  </div>
  <div class="col-md-6">
    <label for="empNm" class="form-label">직원명</label>
    <input type="text" class="form-control" id="empNm" name="empNm" required>
  </div>
  <div class="col-md-6">
    <label for="empPay" class="form-label">급여</label>
    <input type="text" class="form-control" id="empPay" name="empPay">
    <form:errors path="empPay"/>
  </div>
  <div class="col-md-6">
    <label for="empMjNum" class="form-label">매니저명</label>
    <input type="hidden" class="form-control" id="empMjNum" name="empMjNum" >
    <input type="text" class="form-control" id="empMjNm" 
    placeholder="직원명을 입력해주세요" readonly/>
        <button type="button" id="btnEmpMjNum" class="btn btn-outline-danger" data-bs-toggle="modal" data-bs-target="#exampleModal">검색</button>
  </div>
  <div class="col-12">
    <button type="submit" class="btn btn-primary">등록</button>
  </div>
</form:form>
</div>

 

관리자탭(id="manager" style="display:none;")

<div class="bd-example" id="manager" style="display:none;">
<form:form modelAttribute="empVO" action="/emp/createPost" method="post" class="row g-3">
	<!-- 직원번호 시작 -->
  <div class="col-md-6">
    <label for="empNum" class="form-label">매니저버노</label>
    <form:input type="text" path="empNum" class="form-control"/>
      <input type="hidden" id="empNumAjax" class="form-control" />  
  </div>
  
  <div class="col-md-4">
    <label for="inputZip" class="form-label">우편번호</label>
    <input type="text" class="form-control" id="inputZip" name="inputZip" readonly>
    <button type="button" style="float:left;" id="btnPostno" class="btn btn-outline-danger">우편번호검색</button>
  </div>
  
  <div class="col-12">
    <label for="address" class="form-label">주소</label>
    <input type="text" class="form-control" id="address" name="address" placeholder="주소를 입력해주세요" readonly/>
  </div>
  
  <div class="col-12">
    <label for="inputAddress2" class="form-label">상세주소</label>
    <input type="text" class="form-control" id="detAddress" name="detAddress" />
  </div>
  <div class="col-md-6">
    <label for="empPhe" class="form-label">연락처</label>
    <input type="text" class="form-control" id="empPhe" name="empPhe">
    <form:errors path="empPhe"></form:errors>
  </div>
  <div class="col-md-6">
    <label for="empNm" class="form-label">직원명</label>
    <input type="text" class="form-control" id="empNm" name="empNm" required>
  </div>
  <div class="col-md-6">
    <label for="empPay" class="form-label">급여</label>
    <input type="text" class="form-control" id="empPay" name="empPay">
    <form:errors path="empPay"/>
  </div>
  <div class="col-md-6">
    <label for="empMjNum" class="form-label">매니저명</label>
    <input type="hidden" class="form-control" id="empMjNum" name="empMjNum" >
    <input type="text" class="form-control" id="empMjNm" 
    placeholder="직원명을 입력해주세요" readonly/>
        <button type="button" id="btnEmpMjNum" class="btn btn-outline-danger" data-bs-toggle="modal" data-bs-target="#exampleModal">검색</button>
  </div>
  <div class="col-12">
    <button type="submit" class="btn btn-primary">등록</button>
  </div>
</form:form>
</div>