업무관련/스프링

javascript 구분짓는 html 코딩

레임보우 2024. 2. 6. 16:42

html에 script를 코딩하다보면 어디가 어딘지 모를때나

범위를 지정해서 다른 곳에 영향이 가지 않게 코딩을 할수 있는 방법이 있다

또한 공통코드로 활용 할수 있다.

 

<div id="mypage">
        <div id="jspLoad1">
        	<input type="text" class="in1">
        </div>
        <div id="jspLoad2">
        	<input type="text" class="in1">
        </div>
</div>

이라면

// 상위에 항상 선언
// 여기다 모든걸 넣는다는 개념으로
var _thisVarMain = {};

// jspLoad1 jspLoad2 모두 동작됨
_thisVarMain.body = $("#mypage");
_thisVarMain.body.find(".in1").val("CCC");

// jspLoad1 에 있는 것들중에서 동작됨
_thisVarMain.body1 = $("#jspLoad1");
_thisVarMain.body1.find(".in1").val("AAA");


// jspLoad2 에 있는 것들중에서 동작됨
_thisVarMain.body2 = $("#jspLoad2");
_thisVarMain.body2.find(".in1").val("BBB");

 

 

 공통코드로도 만들수 있다.

// 상단에 하나의 변수를 선언한다.
// 이곳에 모든 코드를 넣는다
var _thisVarMain = {};

// ajax 호출 공통으로 만들어 놓으면 반복코드가 짧아진다.
_thisVarMain.sendAjax = function(async, url, data, bfFn, afFn){
	$.ajax({
	    type : "post",
	  	url : url,
	    async : async,
	    data : data,
	    dataType: 'json',
	    contentType: 'application/x-www-form-urlencoded; charset=UTF-8', 
	    beforeSend : function(request){
	    	if(bfFn != null) bfFn();
	    },
	    success : function(data){},
	    error : function(request,status,error){
	    	alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
	    },
	    complete: function(data, status) {
	    	if(afFn != null) afFn(data.responseJSON);
	    }
	});
};

// 사용법 예시
		var async = false;
		var url = "/mypage/ajax/mypageBkmkList.do";
		var data = {};
		data.pageIndex = num;
		data.pageUnit = _thisVar.body.find("select[id=pageUnit]").val();
		data.pageSize = "10";
		data.searchKeyword = _thisVar.body.find("#searchKeyword").val();
		data.webMenuId1 = _thisVarMain.isNull(webMenuId1)?"":webMenuId1;
		data.webMenuId2 = _thisVarMain.isNull(webMenuId2)?"":webMenuId2;
		var bfFn = null;
		var afFn = _thisVar.setList;
		_thisVarMain.sendAjax(async, url, data, bfFn, afFn);
        
        
// null인지 확인하기위한 공통함수        
_thisVarMain.isNull = function(str){
	if(str == null) return true;
	if(str == "null") return true;
	if(str == undefined) return true;
	if(str == "undefined") return true;
	if(str == "") return true;
	
	return false;
};
// isnNull 사용법
if(_thisVarMain.isNull(url)) return;

 

 

mypage.jsp 실사용 예시 부모코드

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator" %>
<%@ include file="/WEB-INF/jsp/cmm/cmmInclude.jsp" %>
<!DOCTYPE html>
<html>

<head>
    <script type="text/javascript" src="/assets/new-publishing/jquery/jquery-3.4.1.js"></script>
    <!-- <meta charset="UTF-8"> -->
    <meta name="Generator" content="EditPlus®">
    <meta name="Author" content="">
    <meta name="Keywords" content="">
    <meta name="Description" content="">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no">


    <!--taglist-->

    <!-- jquery-ui -->
    <script type="text/javascript" src="/assets/new-publishing/jquery/jquery-ui.js"></script>
    <link rel="stylesheet" href="/assets/new-publishing/css/jquery-ui.css">

    <!-- chart -->
    <!-- bootstrap-4.3.1-dist -->
    <script type="text/javascript"
            src="/assets/new-publishing/jquery/bootstrap-5.2.3-dist/js/bootstrap.bundle.js"></script>
    <link rel="stylesheet" href="/assets/new-publishing/jquery/bootstrap-5.2.3-dist/css/bootstrap.css">
    <!-- bootstrap-datepicker-1.9.0-dist -->
    <script type="text/javascript"
            src="/assets/new-publishing/jquery/bootstrap-datepicker-1.9.0-dist/js/bootstrap-datepicker.js"></script>
    <link rel="stylesheet"
          href="/assets/new-publishing/jquery/bootstrap-datepicker-1.9.0-dist/css/bootstrap-datepicker3.css">
    <script type="text/javascript"
            src="/assets/new-publishing/jquery/bootstrap-datepicker-1.9.0-dist/locales/bootstrap-datepicker.ko.min.js"></script>
    <!-- swiper-4.5.0 -->
    <script type="text/javascript" src="/assets/new-publishing/jquery/swiper-4.5.0/dist/js/swiper.js"></script>
    <link rel="stylesheet" href="/assets/new-publishing/jquery/swiper-4.5.0/dist/css/swiper.css">

    <!-- core CSS -->
    <script type="text/javascript" src="/assets/new-publishing/jquery/commons.js"></script>
    <script defer type="text/javascript" src="/assets/new-publishing/jquery/custum-select.js"></script>
    <link rel="stylesheet" href="/assets/new-publishing/css/font.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/Epic2023-v1.1/style.css">

    <link rel="stylesheet" href="/assets/new-publishing/css/user-define.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/custom-style.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/default-element.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/commons.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/custom-modal.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/custom-txt.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/custom-list.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/custum-border.css">

    <link rel="stylesheet" href="/assets/new-publishing/css/layout.css">
    <link rel="stylesheet" href="/assets/new-publishing/css/device-layout.css">
    <!-- User Define CSS -->

	<!-- API관리 JS -->
	<style>
	[class*='form-area-box'] .custom-select{
	position: static;
	height: 30px;
}

[class*='form-area-box'] .custom-select select{
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1000;
	width: 0;
	height: 0;
}

[class*='form-area-box'] .custom-select button,
[class*='form-area-box'] .custom-select input{
	border: 0;
	background: #fff0;
	padding: 0;
	width: 100%;
	height: 100%;
	text-align: left;
	font-size: 13px;
	color: inherit;
}
[class*='form-area-box'] .custom-select button{color: var(--gray-600);}
[class*='form-area-box'].size-m .custom-select button{font-size:10px;}
[class*='form-area-box'] .custom-select input+.icons,
[class*='form-area-box'] .custom-select button:before{
	position: absolute;
	right: 8px;
	top: 50%;
	transform: translateY(-50%);
}
[class*='form-area-box'] .custom-select ul {
	/* display: none; */
	max-height: 0;
	position: absolute;
	overflow: hidden;
	transition: max-height 0s;
}

[class*='form-area-box'] .custom-select ul.select {
	display: block;
	position: absolute;
	top: calc(100% + 3px);
	max-height: 200px;
	transition: max-height .5s;
	min-width: 100%;
	padding: 0;
	left: 0;
	background: #fff;
	border: 2px solid var(--blue-500);
	border-radius: 8px;
	z-index:1000;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	overflow:auto;
	/* 기본 */
	box-shadow: 0px 4px 5px 0px var(--gray-10per);
}
	</style>

    <title>Page</title>

</head>

<body>
<div id="mypage">
    <div class="sub-page-bgimg-3-2">
        <img src="/assets/new-publishing/images/BG5.png" alt="" class="img1 d-none d-md-block">
        <img src="/assets/new-publishing/images/BG5-m.png" alt="" class="img1 d-md-none">
    </div>
    <div class="banner sub-page-3-2">
        <div class="box">
            <div class="top">
                <p class="">
                    <button class="bs-s btn-blue-subtitle d-flex mb-8px round-24px">
                        <i class="icon-user"></i>
                        <span>
		                    <sec:authorize access="isAuthenticated()">
								<c:choose>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE000001'}">관리자</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE000002'}">기관사용자</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE000003'}">기관관리자</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE000004'}">대민사용자(비로그인)</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE000005'}">연계 관리자</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE000006'}">분석서비스사용자</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE0000012'}">조기오픈관리자</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE0000013'}">해양공간관리계획</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE0000018'}">테스트</c:when>
									<c:when test="${principal.ofbdUserVO.webRoleId eq 'ROLE0000019'}">대민사용자(로그인)</c:when>
									<c:otherwise>일반사용자</c:otherwise>
								</c:choose>
		                    </sec:authorize>
                        </span>
                    </button>
                    안녕하세요.
                    <sec:authorize access="isAuthenticated()">
                        ${principal.ofbdUserVO.userNm}님
                    </sec:authorize>
                </p>
                <div class="navigation">
                    <div class="row">
                        <div class="col home"><a href="/user/main/index.do"><i class="icon-home-roof F"></i> HOME</a></div>
                        <div class="col"><i class="icon-angle-right"></i></div>
                        <div class="col now"><a href="/mypage/data/index.do" class="">마이페이지</a></div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="content">

        <div class="datum-point">
            <div class="sub-menu-bar d-none d-xl-block">
                <div class="row">
                    <div class="col box">
                        <button type="button" class="mypageBkmk">관심데이터</button>
                        <button type="button" class="mypageActLog">활동기록</button>
                        <button type="button" class="mypagedrBrd"> 데이터 요청</button>
                        <button type="button" class="mypageinqBrd">문의관리</button>
                        <button type="button" class="mypageMemberUpdate">회원정보 수정</button>
                        <!-- 외부망 기준 API활용신청은 공공데이터 포탈에서 진행되므로 API관리는 사용되지 않는 메뉴 -->
                        <!-- <button type="button" class="mypageApi">API관리</button> -->
                    </div>
                    <%--						<div class="col suport justify-content-end">--%>
                    <%--							<!-- <button type="button" class="btn-blue-subtitle bs-md-m">--%>
                    <%--								<i class="icon-print"></i>--%>
                    <%--							</button> -->--%>
                    <%--						</div>--%>
                </div>
            </div>


            <div id="jspLoad"></div>


        </div>

    </div>
    <!-- Modal -->
    <div class="custum-modal fade position-xl-center" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
        <div class="cutum-modal-dialog w-ver6">
        	<form id="selectPopKeyTkForm" onsubmit="return false;">
	        	<input type="hidden" name="userId" id="userId" value=""/>
				<input type="hidden" name="userNm" id="userNm" value=""/>
	            <div class="modal-content">
	                <div class="modal-header mb-md-8px">
	                    <div class="d-md-none bar">
	                        <a href="#" class="barbtn" data-custum-modal-dismiss="modal"><span style="display: none;"></span></a>
	                    </div>
	                    <h4 class="modal-title ">
	                        <i class="icon-user-edit"></i><span class="">키인계</span>
	                    </h4>
	                    <button type="button" class="close-btn icon-times F" data-custum-modal-dismiss="modal">
	                    </button>
	                </div>
	                <div class="modal-body p-16px">
	                      <div class="form-area-box-input mb-16px size-l size-md-xl">
	                          <label class='fs-md-15px'>인수자(회원)</label>
	                             <div class="row">
	                                 <div class="col-2">
	                                     <!-- <div class="ele-icon-box p-0"> -->
	                                     	<input type="hidden" id="memberOption" value="memberId">
	                                     	<div class="check-radio-box ver1 mr-20px mt-14px">
												<input type="radio" name="searchOption" id="memberId" value="memberId" checked>
												<label for="memberId" style="font-size: 15px;"><span>아이디</span></label>
											</div>
											<div class="check-radio-box ver1 mt-14px">
												<input type="radio" name="searchOption" id="memberNm" value="memberNm">
												<label for="memberNm" style="font-size: 15px;"><span>이름</span></label>
											</div>
	                                         <!-- <div class="custom-selet" id="customSelect">
		                                     	<label class="d-none">검색 조건</label>
	                                             <button type="button" class="icon-angle-down-small">검색 조건</button>
	                                             <select name="memberOption" id="memberOption">
	                                                 <option value="memberId" selected>아이디</option>
	                                                 <option value="memberNm">이름</option>
	                                             </select>
	                                             <ul></ul>
	                                         <div class="custom-select" id="customSelect">
	                                             <button type="button" class="icon-angle-down-small"></button>
	                                             <select name="memberOption" id="memberOption">
											        <option value="memberId" selected>아이디</option>
											        <option value="memberNm">이름</option>
											    </select>
											    <ul>
											        <li data-value="memberId" data-icon="icon-id">아이디</li>
											        <li data-value="memberNm" data-icon="icon-name">이름</li>
											    </ul>
	                                         </div>
	                                     </div> -->
	                                 <!-- </div> -->
	                                 </div>
	                                 <div class="col">
		                                 <div class="ele-icon-box p-0">
		                                 	<label for="inputUser" class="d-none">검색대상</label>
											<input type="text" name="inputUser" id="inputUser" value="" />
											<a href="#" class="search_cfn_click" id="popKeySearch">
											<span style="display: none;">검색</span>
												<i class="icon-search"></i>
											</a>
										</div>
									</div>
	                         	 </div> 
	                      </div>
	                        <div class="table-box-1 mb-16pk">	
								<table id="pop_key_tkOvr_table">
									<caption>
									검색결과
									</caption>
									<thead class="bs-1 ts-l">
										<tr class="px-v-l">
											<th scope="col" class="ta_c">아이디</th>
											<th scope="col" class="ta_c">이름</th>
											<th scope="col" class="ta_c">사용자구분</th>
											<th scope="col" class="ta_c">기관</th>
																				
										</tr>
									</thead>
									<tbody class="bs-1 t-t-c ts-m" id="pop_key_tkOvr_tbody">
										<tr class="px-v-xl t-t-c">
											<td class="ta_c" colspan="4">인수자 아이디 또는 이름을 검색해주세요.</td>
										</tr>		
									</tbody>
								</table>
							</div>
							<!--없는 경우-->
							<div class="py-16px text-center" style="display: none;">
								<img src="/assets/new-publishing/images/nonesearch.svg" alt="" style="height:80px;" class="d-block d-md-none mx-auto">
								<img src="/assets/new-publishing/images/nonesearch.svg" alt="" style="height:120px;" class="d-none d-md-block mx-auto">
								<p class="my-8px my-md-16px fs-18px fs-md-24px fw-700 lh-1">검색결과가 없습니다.</p>
								<span class="fs-13px fs-md-15px">입력한 사용자 정보를 확인해주세요.</span>
							</div>
		                    <div class="bottom-box pt-16px pb-8px pb-md-0">
		                        <div class="row justify-content-center" style="margin: 0 -4px;">
		                        	<div class="col col-md flex-grow-0 px-4px white-space-nowrap">
										<button type="button" class="bs-m bs-md-l btn-black w-100" data-custum-modal-dismiss="modal">
											<i class="icon-times"></i>
											<span>닫기</span>
										</button>
									</div>
		                        </div>
		                  </div>
	                </div>
	
	            </div>
            </form>
        </div>    
	</div>
	
	<!-- 변경이력 모달 -->
	<div class="custum-modal fade position-xl-center" id="exampleModal2" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
			<div class="cutum-modal-dialog w-ver6">
				<div class="modal-content">
					
					<div class="modal-header mb-md-8px">
						<div class="d-md-none bar">
							<a href="#" class="barbtn" data-custum-modal-dismiss="modal"><span style="display: none;">검색</span></a>
						</div>
						<h4 class="modal-title ">						
							<i class="icon-user-edit"></i><span class="">키인계 변경이력</span>
						</h4>
						<button type="button" class="close-btn icon-times F" data-custum-modal-dismiss="modal">
						</button>												
					</div>
					<div class="modal-body p-16px">
						<div class="table-box-1 mb-16pk">	
							<table id="pop_chng_hist_table">
								<caption>
								인증키 인수인계 목록
								</caption>
								<thead class="bs-1 ts-l">
									<tr class="px-v-l">
										<th scope="col" class="ta_c">순번</th>
										<th scope="col" class="ta_c">인계자</th>
										<th scope="col" class="ta_c">인수자</th>
										<th scope="col" class="ta_c">인수일</th>
																			
									</tr>
								</thead>
								<tbody class="bs-1 t-t-c ts-m" id="pop_chng_hist_tbody">
									<tr class="px-v-xl t-t-c">
										<td class="ta_c" colspan="4">인계 이력이 없습니다.</td>
									</tr>
																
								</tbody>
							</table>
						</div>
						<!--없는 경우-->
						<div class="py-16px text-center" style="display: none;">
							<img src="../images/nonesearch.svg" alt="" style="height:80px;" class="d-block d-md-none mx-auto">
							<img src="../images/nonesearch.svg" alt="" style="height:120px;" class="d-none d-md-block mx-auto">
							<p class="my-8px my-md-16px fs-18px fs-md-24px fw-700 lh-1">검색결과가 없습니다.</p>
							<span class="fs-13px fs-md-15px">조건 검색에서 조건을 수정하여 다시 검색해보세요.</span>
						</div>
						<div class="bottom-box pt-16px pb-8px pb-md-0">
							<div class="row justify-content-center" style="margin: 0 -4px;">
								<div class="col col-md flex-grow-0 px-4px white-space-nowrap">
									<button class="bs-m bs-md-l btn-black w-100" data-custum-modal-dismiss="modal">
										<i class="icon-times"></i>
										<span>닫기</span>
									</button>
								</div>
								
							</div>
							
						</div>
					</div>	
					
				</div>
			</div>
		</div>

<script>
    var _thisVarMain = {};

    /*document.querySelector('#autocomplet').addEventListener('click',function(e){
        document.querySelector('.autocomplet').classList.add('trans');
    });
    $(document).mouseup(function (e){
        var LayerPopup = $(".autocomplet");
        if(LayerPopup.has(e.target).length === 0){
            LayerPopup.removeClass("trans");
        }
    });*/
    // function mobile_menu(e) {
    //     e.classList.toggle('trans');
    //     document.querySelector('.menubox').classList.toggle('trans');
    //     document.querySelector('.wrap').classList.toggle('mobile-menu-show');
    // }

    function suportMenu(e) {

        if (e == 'left-menu') {
            document.querySelector(`.${e}`).classList.toggle('trans');
            document.querySelector('.left-search').classList.remove('trans');
        } else if (e == 'left-search') {
            document.querySelector(`.${e}`).classList.toggle('trans');
            document.querySelector('.left-menu').classList.remove('trans');
        }


    }

    function checkedBox(e) {
        let $cardBox = document.querySelectorAll('.card-box-img-txt-1');
        let $checkedIcon = $('.card-box-img-txt-1>.checked-icon');
        $checkedIcon.removeClass("F");
        $cardBox.forEach(function (e) {
            e.classList.remove('active');
        });
        e.classList.add('active');
        e.children[0].classList.add('F');
    }
</script>
<script>
    window.addEventListener('DOMContentLoaded', function () {
    });

    _thisVarMain.sendAjax = function (async, url, data, bfFn, afFn) {
        $.ajax({
            type: "post",
            url: url,
            async: async,
            data: data,
            dataType: 'json',
            contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
            beforeSend: function (request) {
                if (bfFn != null) bfFn();
            },
            success: function (data) {
            },
            error: function (request, status, error) {
                alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
            },
            complete: function (data, status) {
                if (afFn != null) afFn(data.responseJSON);
            }
        });
    };

    _thisVarMain.isNull = function (str) {
        if (str == null) return true;
        if (str == "null") return true;
        if (str == undefined) return true;
        if (str == "undefined") return true;
        if (str == "") return true;

        return false;
    };

    _thisVarMain.scrTop = function () {
        $('body,html').animate({
            scrollTop: 0
        }, 0);
    }

    // 주어진 이름의 쿠키를 반환하는데,
    // 조건에 맞는 쿠키가 없다면 undefined를 반환합니다.
    const getCookie = (name) => {
        let matches = document.cookie.match(new RegExp(
            "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
        ))
        return matches ? decodeURIComponent(matches[1]) : undefined
    }

    $(document).ready(function () {
        const currentPageContent = getCookie('pageContent')
        console.log(currentPageContent)

        try {//관심데이터에서 쓸 메뉴 정보
            _thisVarMain.selectMenuInfo = ${selectMenuInfo};
        } catch (e) {
            _thisVarMain.selectMenuInfo = null;
        }

        _thisVarMain.body = $("#mypage");

        _thisVarMain.jspLoad = function (url) {
            _thisVarMain.body.find("[id=jspLoad]>").remove();
            if (_thisVarMain.isNull(url)) return;
            _thisVarMain.body.find("[id=jspLoad]").load(url, function () {
            });
        };

        //메뉴클릭
        _thisVarMain.body.find(".col.box button").click(function () {
            var vMenuNm = $(this).text().trim().replace(/ /g, '');

            $(this).parent().find("button.active").removeClass("active");
            $(this).addClass("active");

            if (vMenuNm === "관심데이터") {
                _thisVarMain.jspLoad("/mypage/ajax/mypageBkmk.do");
            }

            if (vMenuNm === "활동기록") {
                _thisVarMain.jspLoad("/mypage/ajax/mypageActLog.do");
            }

            if (vMenuNm === "데이터요청") {
                _thisVarMain.jspLoad("/mypage/ajax/mypagedrBrd.do");
            }

            if (vMenuNm === "문의관리") {
                _thisVarMain.jspLoad("/mypage/ajax/mypageinqBrd.do");
            }

            if (vMenuNm === "회원정보수정") {
                _thisVarMain.jspLoad("/mypage/ajax/mypageMemberUpdate.do");
            }

            /* if (vMenuNm === "API관리") {
                _thisVarMain.jspLoad("/mypage/openApi/mypageApi.do");
            } */
        });

        ///////////////////////////////////////////////////////
        //시작//////////////////////////////////////////////////
        ///////////////////////////////////////////////////////
        //NMEN000036 관심데이터 NMEN000037 활동기록 NMEN000038 데이터요청 NMEN000039 문의관리 NMEN000040 회원정보수정
        _thisVarMain.body.find(".col.box button[class=active]").removeClass("active");

        if ("NMEN000036,NMEN000007".indexOf("${menuId}") > -1) {
            _thisVarMain.body.find(".col.box button:contains(관심데이터)").addClass("active");
            _thisVarMain.jspLoad("/mypage/ajax/mypageBkmk.do");
        }

        if ("${menuId}" == "NMEN000037") {
            _thisVarMain.body.find(".col.box button:contains(활동기록)").addClass("active");
            _thisVarMain.jspLoad("/mypage/ajax/mypageActLog.do");
        }

        if ("${menuId}" == "NMEN000038") {
            _thisVarMain.body.find(".col.box button:contains(데이터)").addClass("active");
            _thisVarMain.jspLoad("/mypage/ajax/mypagedrBrd.do");
        }

        if ("${menuId}" == "NMEN000039") {
            _thisVarMain.body.find(".col.box button:contains(문의관리)").addClass("active");
            _thisVarMain.jspLoad("/mypage/ajax/mypageinqBrd.do");
        }

        if ("${menuId}" == "NMEN000040") {
            _thisVarMain.body.find(".col.box button:contains(회원정보)").addClass("active");
            _thisVarMain.jspLoad("/mypage/ajax/mypageMemberUpdate.do");
        }

        /* if ("${menuId}" == "NMEN000047") {
            _thisVarMain.body.find(".col.box button:contains(API)").addClass("active");
            _thisVarMain.jspLoad("/mypage/openApi/mypageApi.do");
        } */

        const subPage = ['mypageBkmk',
            'mypageActLog',
            'mypagedrBrd',
            'mypageinqBrd',
            'mypageMemberUpdate']
        if (subPage.indexOf(currentPageContent) > -1) {
			document.querySelector("." + currentPageContent).click()
		}
    });
</script>
<script>
$(document).ready(function(){
	$("#keyTakeOver").on('click',function(e) {
		opnKeyTakeOver();
	});
	
	/* $("#memberOption").on("change", function() {
		var selectedVal = $(this).val();
		console.log("selectedVal", selectedVal)
		
		$("#memberOption").val(selectedVal);
		console.log($("memberOption").val())
	}); */
	
	const memberOption = $("#memberOption");
	memberOption.val("memberId");
	
	$('input[name="searchOption"]').change(function () {
		memberOption.val($(this).val());
		console.log("memberOptionVal", memberOption.val());
	});
});


</script>
</body>
</html>

 

 

mypage-bkmk.jsp 자식코드

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ include file="/WEB-INF/jsp/cmm/cmmInclude.jsp"%>
				<div class="tab-design-2-1 mb-24px mb-md-16px">
					<div class="row"></div>
				</div>
				<div class="top-box">
					<div class="row">
						<div class="col d-none d-md-flex"></div>
						<div class="col-12 col-md flex-b-md-226px flex-grow-0 white-space-nowrap">
							<div class="form-area-box size-l">											
								<div class="ele-icon-box">
									<label for="searchKeyword" style="display: none;"></label>
									<input type="text" name="searchKeyword" id="searchKeyword" placeholder="내용입력">
									<a href="javascript:void(0);" class="icon-search"><span style="display: none;"></span></a>
								</div>										
							</div>
						</div>
						<div class="col col-md flex-b-md-116px white-space-nowrap">
							<div class="form-area-box size-l">											
								<div class="ele-icon-box">
									<label for="pageUnit" style="display: none;"></label>
									<div class="custom-selet">
										<button class="icon-angle-down">15개씩 보기</button>
										<select id="pageUnit" name="pageUnit" onchange="FCchage(this);_thisVar.fnSearch(1);">
											<option value="15">15개 보기</option>
											<option value="30">30개 보기</option>
											<option value="45">45개 보기</option>
											<option value="60">60개 보기</option>
										</select>
										<ul class=""></ul>
									</div>					
								</div>										
							</div>
						</div>
						<div class="col flex-grow-0 flex-b-md-218px white-space-nowrap">
							<div class="capsule-box">
								<button type="button" class="btn- bs-m tab-tit-1 active" onclick="tab(1);">
									<i class="icon-grid-square"></i>
									<span class="d-none d-md-flex">카드보기</span>
								</button>
								<button type="button" class="btn- bs-m tab-tit-2 " onclick="tab(2);">
									<i class="icon-list"></i>
									<span class="d-none d-md-flex">리스트보기</span>
								</button>
							</div>
						</div>
					</div>
				</div>
				<div class="tab-box mb-40px">
					<div id="tab-1" class="on">
						<div class="card-list-1 ">
							<div class="row"></div>
						</div>
					</div>
					<div id="tab-2" class="">
						<div class="card-list-2">
							<div class="row"></div>
						</div>
					</div>
				</div>
				
				<div class="paging-box pb-md-32px">
					<ul class="">

					</ul>
				</div>
				<div class="py-72px text-center" style="display:none;">
					<img src="/assets/new-publishing/images/nonesearch.svg" alt="검색결과가 없습니다." style="height:120px;" class="d-none d-md-block mx-auto">
					<p class="my-8px my-md-16px fs-18px fs-md-24px fw-700 lh-1">검색결과가 없습니다.</p>
					<span class="fs-13px fs-md-15px">조건 검색에서 조건을 수정하여 다시 검색해보세요.</span>
				</div>
<form id="bkmkForm" name="bkmkForm" method="post">
	<input type="hidden" id="metaSn" name="metaSn"/>
	<input type="hidden" id="histDe" name="histDe"/>
	<input type="hidden" id="metaAtrbCode" name="metaAtrbCode"/>
	<input type="hidden" id="pageType" name="pageType" value="page"/>
	<input type="hidden" id="pWebMenuId" name="pWebMenuId"/>
	<input type="hidden" id="rootMenuId" name="rootMenuId"/>
</form>

<script>
var _thisVar = {};

$(document).ready(function() {
	_thisVar.body = _thisVarMain.body.find("[id=jspLoad]"); //body
	
	//세팅
	_thisVar.setMenuInfo = function(){
		var vHtml = "";
		
		///////////////////////////////////////////////////////
		//메뉴세팅///////////////////////////////////////////////
		///////////////////////////////////////////////////////
		$.each(_thisVarMain.selectMenuInfo, function(idx, data){
			if(data.level == 0 && data.webMenuId1 == "NMEN000001"){
				vHtml += "<div class=\"col\">";
				vHtml += "	<button class=\"bs-l btn- active\" data-value=\""+data.webMenuId1+"\"><i class=\"icon-desktop-code\"></i><span>"+data.webMenuNm1+"</span></button>";
				vHtml += "</div>";
			}
			
			if(data.level == 0 && data.webMenuId1 == "NMEN000002"){
				vHtml += "<div class=\"col\">";
				vHtml += "	<button class=\"bs-l btn-\" data-value=\""+data.webMenuId1+"\"><i class=\"icon-presentation-poll\"></i><span>"+data.webMenuNm1+"</span></button>";
				vHtml += "</div>";
			}
			
			if(data.level == 0 && data.webMenuId1 == "NMEN000003"){
				vHtml += "<div class=\"col\">";
				vHtml += "	<button class=\"bs-l btn-\" data-value=\""+data.webMenuId1+"\"><i class=\"icon-inbox\"></i><span>"+data.webMenuNm1+"</span></button>";
				vHtml += "</div>";
			}
		});
		
		_thisVar.body.find(".tab-design-2-1.mb-24px.mb-md-16px>>").remove();
		_thisVar.body.find(".tab-design-2-1.mb-24px.mb-md-16px>").html(vHtml);
		
		//대메뉴클릭
		_thisVar.body.find(".tab-design-2-1.mb-24px.mb-md-16px>>> button").click(function(){
			$(this).parent().siblings().find("button.active").removeClass("active");
			$(this).addClass("active");
			var webMenuId1 = $(this).data().value;
			var vNotWebMenuId1 = "NMEN000001,NMEN000003";
			var vNotMenuNm2 = "해양공간종합지도,빅데이터분석,OpenAPI";
			var vWid = 129;
			if(webMenuId1 == "NMEN000003") vWid = 80;
			
			vHtml = "";
			vHtml += "<div class=\"col-3 col-md flex-b-md-"+vWid+"px\">";
			vHtml += "	<button class=\"btn-blue bs-m px-0  w-100 cate\"><span>전체</span></button>";
			vHtml += "</div>";
			
			$.each(_thisVarMain.selectMenuInfo, function(idx, data){
				if(data.level == 1 && data.webMenuId1 == webMenuId1){
					if(vNotWebMenuId1.indexOf(webMenuId1) > -1 && vNotMenuNm2.indexOf(data.webMenuNm2) > -1) return;
					vHtml += "<div class=\"col-3 col-md flex-b-md-"+vWid+"px\">";
					vHtml += "	<button class=\"btn-blue-outline bs-m px-0  w-100 cate\" data-value=\""+data.webMenuId2+"\"><span>"+data.webMenuNm2+"</span></button>";
					vHtml += "</div>";
				}
			});
			
			_thisVar.body.find(".col-3.col-md.flex-b-md-129px").remove();
			_thisVar.body.find(".col-3.col-md.flex-b-md-80px").remove();
			_thisVar.body.find(".col.d-none.d-md-flex").before(vHtml);
			
			//중메뉴클릭
			_thisVar.body.find(".col-3.col-md.flex-b-md-"+vWid+"px").click(function(){
				//$(this).siblings().find("button.btn-blue").removeClass("btn-blue");
				//$(this).siblings().find("button.btn-navy").removeClass("btn-navy");
				
				$(this).siblings().find("button.cate").removeClass("btn-blue");
				$(this).siblings().find("button.cate").addClass("btn-blue-outline");
				
				$(this).find("button").removeClass("btn-blue-outline");
				$(this).find("button").addClass("btn-blue");
				
				//$(this).find("button").addClass("btn-navy");
				/*if($(this).find("button").text() == "전체"){
					$(this).find("button").addClass("btn-blue");
				}else{
					$(this).find("button").addClass("btn-navy");
				}*/
				
				_thisVar.fnSearch(1);
			});
			
			_thisVar.fnSearch(1);
		});
		
		_thisVar.body.find(".tab-design-2-1.mb-24px.mb-md-16px>>> button.active").trigger("click");
		///////////////////////////////////////////////////////
		//메뉴세팅끝//////////////////////////////////////////////
		///////////////////////////////////////////////////////
	};
	
	//세팅
	_thisVar.setList = function(resData){
		var vHtml = "";
		///////////////////////////////////////////////////////
		//리스트세팅//////////////////////////////////////////////
		///////////////////////////////////////////////////////
		/*
			<!--
				<span class="bs-vxs btn-navy-subtitle round-32px">자원개발</span>
				<span class="bs-vxs btn-indigo-subtitle round-32px">에너지개발</span>
				<span class="bs-vxs btn-purple-subtitle round-32px">해양관광</span>
				<span class="bs-vxs btn-red-subtitle round-32px">환경·생태</span>
				<span class="bs-vxs btn-orange-subtitle round-32px">안전관리</span>
				<span class="bs-vxs btn-green-subtitle round-32px">연구·교육</span>
				<span class="bs-vxs btn-cyan-subtitle round-32px">군사활동</span>
				<span class="bs-vxs btn-charcoal-subtitle round-32px">항만·항행</span>
			-->
			<!--
				<span class="bs-vxs btn-blue-subtitle round-32px">어업자원</span>
				<span class="bs-vxs btn-navy-subtitle round-32px">어촌양식</span>
				<span class="bs-vxs btn-indigo-subtitle round-32px">해양산업</span>
				<span class="bs-vxs btn-purple-subtitle round-32px">해양환경</span>
				<span class="bs-vxs btn-red-subtitle round-32px">해사안전</span>
				<span class="bs-vxs btn-orange-subtitle round-32px">해운물류</span>
				<span class="bs-vxs btn-green-subtitle round-32px">항만운영</span>
				<span class="bs-vxs btn-cyan-subtitle round-32px">항만건설</span>
				<span class="bs-vxs btn-charcoal-subtitle round-32px">공통행정</span>
			-->
			<!--
			<span class="bs-vxs btn-cyan-outline round-32px" >기초DB</span>
			<span class="bs-vxs btn-blue-outline round-32px" >해양수산분류</span>
			<span class="bs-vxs btn-purple-outline round-32px" >정부기능분류</span>
			<span class="bs-vxs btn-green-outline round-32px" >내부공개가능</span>
			<span class="bs-vxs btn-orange-outline round-32px" >정책협의</span>
			<span class="bs-vxs btn-black-outline round-32px" >XML+지도</span>
		-->
		*/
		///////////////////////////////////////////////////////
		//카드보기///////////////////////////////////////////////
		///////////////////////////////////////////////////////
		vHtml = "";
		
		$.each(resData.resultList, function(idx, data){
			
			var textWid = 80;
			
			vHtml += "<div class=\"col-6 col-md-4\">";
			
			vHtml += "	<div class=\"box\" data-value=\""+encodeURIComponent(JSON.stringify(data))+"\">";
			/* vHtml +="<div>X</div>" */
			
			
			vHtml +="<div class=\"top\" style='float: right;'>"
			vHtml +='<i class="icon-times fs-18px delClick" data-value=\''+encodeURIComponent(JSON.stringify(data))+'\'></i>'
			vHtml +="</div>"  
			vHtml += "		<div class=\"top\">";
						
			
			
			if(_thisVarMain.isNull(data.nm115)) data.nm115 = "";
			
			var vNm115 = data.nm115.trim().replace(/ /g, '');
			var webMenuId1 = _thisVar.body.find(".tab-design-2-1.mb-24px.mb-md-16px>>> button.active").data().value;
			if(webMenuId1 == "NMEN000002") vNm115 = data.nm315.trim().replace(/ /g, '');
			var vClass = "info bg-blue-10per text-blue-500 round-32px";
			
			if(vNm115 == "어업자원") vClass = "bs-vxs btn-blue-subtitle round-32px";
			if(vNm115 == "어촌양식") vClass = "bs-vxs btn-navy-subtitle round-32px";
			if(vNm115 == "해양산업") vClass = "bs-vxs btn-indigo-subtitle round-32px";
			if(vNm115 == "해양환경") vClass = "bs-vxs btn-purple-subtitle round-32px";
			if(vNm115 == "해사안전") vClass = "bs-vxs btn-red-subtitle round-32px";
			if(vNm115 == "해운물류") vClass = "bs-vxs btn-orange-subtitle round-32px";
			if(vNm115 == "항만운영") vClass = "bs-vxs btn-green-subtitle round-32px";
			if(vNm115 == "항만건설") vClass = "bs-vxs btn-cyan-subtitle round-32px";
			if(vNm115 == "공통행정") vClass = "bs-vxs btn-charcoal-subtitle round-32px";
			
			if(vNm115 == "어업활동보호") vClass = "bs-vxs btn-blue-subtitle round-32px";
			if(vNm115 == "해양관광") vClass = "bs-vxs btn-navy-subtitle round-32px";
			if(vNm115 == "연구·교육보전") vClass = "bs-vxs btn-indigo-subtitle round-32px";
			if(vNm115 == "골재·광물자원개발") vClass = "bs-vxs btn-purple-subtitle round-32px";
			if(vNm115 == "환경·생태계관리") vClass = "bs-vxs btn-red-subtitle round-32px";
			if(vNm115 == "군사활동") vClass = "bs-vxs btn-orange-subtitle round-32px";
			if(vNm115 == "에너지개발") vClass = "bs-vxs btn-green-subtitle round-32px";
			if(vNm115 == "안전관리") vClass = "bs-vxs btn-cyan-subtitle round-32px";
			if(vNm115 == "항만·항행") vClass = "bs-vxs btn-charcoal-subtitle round-32px";
			if(vNm115 == "")vNm115="법정조사";
			
			//vHtml += "			<span class=\""+vClass+"\">"+data.nm115+" &gt; "+data.nm215+" &gt; "+data.nm315+"</span>";
			vHtml += "			<span class=\""+vClass+"\">"+vNm115+"</span>";
			
			if(!_thisVarMain.isNull(data.nm124)){
				var vNm124 = data.nm124.trim().replace(/ /g, '');
				vClass = "info border-green-500 border text-green-500 round-32px";
				
				if(vNm124 == "기초DB") vClass = "bs-vxs btn-cyan-outline round-32px";
				if(vNm124 == "해양수산분류") vClass = "bs-vxs btn-blue-outline round-32px";
				if(vNm124 == "정부기능분류") vClass = "bs-vxs btn-purple-outline round-32px";
				if(vNm124 == "내부공개가능") vClass = "bs-vxs btn-green-outline round-32px";
				if(vNm124 == "정책협의") vClass = "bs-vxs btn-orange-outline round-32px";
				if(vNm124 == "XML+지도") vClass = "bs-vxs btn-black-outline round-32px";
				textWid=data.nm124.length*10;
				vHtml += "			<span class=\""+vClass+"\" style=\"border-width:0.8px;\" id=\"del\">"+(_thisVarMain.isNull(data.nm124)?"":data.nm124);
				//vHtml += "			<i class=\"icon-times fs-18px\"></i>";
				vHtml += "			</span>";
			}
			
			vHtml += "		</div>";
			vHtml += "		<div class=\"title\" style=\"white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\">"+(_thisVarMain.isNull(data.bsisDtaNm)?"":data.bsisDtaNm)+"</div>";
			vHtml += "		<span class=\"info-txt\" style=\"white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block;\">"+(_thisVarMain.isNull(data.metaNm)?"":data.metaNm)+"</span>";
			vHtml += "		<span class=\"info-txt\">"+(_thisVarMain.isNull(data.factorCn12)?"":data.factorCn12)+"</span>";
			vHtml += "		<div class=\"info\">";
			vHtml += "			<div class=\"row\">";
			vHtml += "				<div class=\"col-12\">";
			vHtml += "					<p class=\"txt1\"><i class=\"icon-document-list\"></i><em>출처</em><span>"+(_thisVarMain.isNull(data.nm113)?"":data.nm113)+(_thisVarMain.isNull(data.factorCn118)?"":"("+data.factorCn118+")")+"</span></p>";
			vHtml += "				</div>";
			vHtml += "				<div class=\"col-12\">";
			vHtml += "					<p class=\"txt1\"><i class=\"icon-calendar-check\"></i><em>수정일자</em><span>"+(data.createdDt.replace(/-/g, '.'))+"</span></p>";
			vHtml += "				</div>";
			vHtml += "			</div>";
			vHtml += "		</div>";
			vHtml += "	</div>";
			vHtml += "	<div class=\"bg\"></div>";
			vHtml += "</div>";
		});
		
		_thisVar.body.find(".card-list-1>>").remove();
		_thisVar.body.find(".card-list-1>").html(vHtml);
		
		///////////////////////////////////////////////////////
		//리스트보기//////////////////////////////////////////////
		///////////////////////////////////////////////////////
		vHtml = "";
		
		$.each(resData.resultList, function(idx, data){
			vHtml += "<div class=\"col-12\">";
			vHtml += "	<div class=\"box\" data-value=\""+encodeURIComponent(JSON.stringify(data))+"\">";
			
			vHtml +="<div class=\"title\" style='float: right;'>"
				vHtml +='<i class="icon-times fs-18px delClick" data-value=\''+encodeURIComponent(JSON.stringify(data))+'\'></i>'
				vHtml +="</div>"  		
			//vHtml += "		<div class=\"title\"><em>"+(_thisVarMain.isNull(data.bsisDtaNm)?"":data.bsisDtaNm)+"</em>";
			vHtml += "		<div class=\"title\"><em style=\"overflow:hidden; text-overflow: ellipsis; white-space:nowrap;\">"+(_thisVarMain.isNull(data.bsisDtaNm)?"":data.bsisDtaNm)+"</em>";
			
			var vNm115 = data.nm115.trim().replace(/ /g, '');
			//var vClass = "info bg-blue-10per text-blue-500 round-32px";
			var vClass = "bs-vxs btn-blue-subtitle round-32px";
			if(vNm115 == "어업자원") vClass = "bs-vxs btn-blue-subtitle round-32px";
			if(vNm115 == "어촌양식") vClass = "bs-vxs btn-navy-subtitle round-32px";
			if(vNm115 == "해양산업") vClass = "bs-vxs btn-indigo-subtitle round-32px";
			if(vNm115 == "해양환경") vClass = "bs-vxs btn-purple-subtitle round-32px";
			if(vNm115 == "해사안전") vClass = "bs-vxs btn-red-subtitle round-32px";
			if(vNm115 == "해운물류") vClass = "bs-vxs btn-orange-subtitle round-32px";
			if(vNm115 == "항만운영") vClass = "bs-vxs btn-green-subtitle round-32px";
			if(vNm115 == "항만건설") vClass = "bs-vxs btn-cyan-subtitle round-32px";
			if(vNm115 == "공통행정") vClass = "bs-vxs btn-charcoal-subtitle round-32px";
			
			if(vNm115 == "어업활동보호") vClass = "bs-vxs btn-blue-subtitle round-32px";
			if(vNm115 == "해양관광") vClass = "bs-vxs btn-navy-subtitle round-32px";
			if(vNm115 == "연구·교육보전") vClass = "bs-vxs btn-indigo-subtitle round-32px";
			if(vNm115 == "골재·광물자원개발") vClass = "bs-vxs btn-purple-subtitle round-32px";
			if(vNm115 == "환경·생태계관리") vClass = "bs-vxs btn-red-subtitle round-32px";
			if(vNm115 == "군사활동") vClass = "bs-vxs btn-orange-subtitle round-32px";
			if(vNm115 == "에너지개발") vClass = "bs-vxs btn-green-subtitle round-32px";
			if(vNm115 == "안전관리") vClass = "bs-vxs btn-cyan-subtitle round-32px";
			if(vNm115 == "항만·항행") vClass = "bs-vxs btn-charcoal-subtitle round-32px";
			if(vNm115 == "")vNm115="법정조사";
			
			
			textWid=vNm115.length*10;
			vHtml += "			<span class=\""+vClass+" ml-16px\" style=\"border-width:0.8px; min-width: "+textWid+"px; text-align: center;\">"+vNm115+"</span>&nbsp;";
			
			if(!_thisVarMain.isNull(data.nm124)){
				textWid=data.nm124.length*8;
				vHtml += "			<span class=\"info border-green-500 border text-green-500 round-32px \" style=\"border-width:0.8px; min-width: "+textWid+"px; text-align: center;\">"+(_thisVarMain.isNull(data.nm124)?"":data.nm124);
				//vHtml += "			<i class=\"icon-times fs-18px\"></i>";
				vHtml += "			</span>";
			}
			
			vHtml += "		</div>";
			vHtml += "		<span class=\"info-txt\">"+(_thisVarMain.isNull(data.metaNm)?"":data.metaNm)+"</span>";
			vHtml += "		<span class=\"info-txt\">"+(_thisVarMain.isNull(data.factorCn12)?"":data.factorCn12)+"</span>";
			vHtml += "		<div class=\"info\">";
			vHtml += "			<div class=\"row\">";
			vHtml += "				<div class=\"col flex-grow-0 white-space-nowrap\">";
			vHtml += "					<p class=\"txt1\"><i class=\"icon-document-list\"></i><em>출처</em><span>"+(_thisVarMain.isNull(data.nm113)?"":data.nm113)+(_thisVarMain.isNull(data.factorCn118)?"":"("+data.factorCn118+")")+"</span></p>";
			vHtml += "				</div>";
			vHtml += "				<div class=\"col flex-grow-0 white-space-nowrap\">";
			vHtml += "					<p class=\"txt1\"><i class=\"icon-calendar-check\"></i><em>수정일자</em><span>"+(data.createdDt.replace(/-/g, '.'))+"</span></p>";
			vHtml += "				</div>";
			vHtml += "			</div>";
			vHtml += "		</div>";
			vHtml += "	</div>";
			vHtml += "	<div class=\"bg\"></div>";
			vHtml += "</div>";
		});
		
		_thisVar.body.find(".card-list-2>>").remove();
		_thisVar.body.find(".card-list-2>").html(vHtml);
		
		if(resData.resultList.length == 0){
			_thisVar.body.find(".card-list-1").css("display", "none");
			_thisVar.body.find(".card-list-2").css("display", "none");
			_thisVar.body.find(".paging-box.pb-md-32px").css("display", "none");
			_thisVar.body.find(".py-72px.text-center").css("display", "block");
		}else{
			_thisVar.body.find(".card-list-1").css("display", "block");
			_thisVar.body.find(".card-list-2").css("display", "block");
			_thisVar.body.find(".paging-box.pb-md-32px").css("display", "block");
			_thisVar.body.find(".py-72px.text-center").css("display", "none");
		}
		
		//상세보기
		//_thisVar.body.find(".box[data-value]").click(function(){
			
			
			$(".delClick").click(function(){
				var data = JSON.parse(decodeURIComponent($(this).data().value));
				if(!confirm("삭제 하시겠습니까?")) return;
				_thisVar.fnDeleteStUserBkmkRlt = function(){
					alert("관심데이터 삭제가 완료되었습니다.");
					_thisVar.fnSearch(1);
					return false;
				};
				
				var async = false;
				var url = "/cmm/userLog/deleteStUserBkmk.do";
				var sndData = {};
				sndData.pWebMenuId = data.webMenuId;
				sndData.histDe = data.histDe;
				sndData.metaSn = data.metaSn;
				sndData.bsisDtaSn = data.bsisDtaSn;
				sndData.isSpatial = "Y";
				var bfFn = null;
				var afFn = _thisVar.fnDeleteStUserBkmkRlt;
				_thisVarMain.sendAjax(async, url, sndData, bfFn, afFn);
				return false;
			});
			
		
			
		_thisVar.body.find(".box>").click(function(){
			var vNm = $(this).text().trim().replace(/ /g, '');
			//var data = JSON.parse(decodeURIComponent($(this).data().value));
			var data = JSON.parse(decodeURIComponent($(this).parent().data().value));
			
			console.log(vNm.length);
			
			if(vNm.length==0 ){
				return false;
			} 
			/* if(vNm.indexOf("외부공개가능") > -1) {
				return false;
				
				console.log(data);
				if(!confirm("삭제 하시겠습니까?")) return;
				_thisVar.fnDeleteStUserBkmkRlt = function(){
					alert("관심데이터 삭제가 완료되었습니다.");
					_thisVar.fnSearch(1);
				};
				
				var async = false;
				var url = "/cmm/userLog/deleteStUserBkmk.do";
				var sndData = {};
				sndData.pWebMenuId = data.webMenuId;
				sndData.histDe = data.histDe;
				sndData.metaSn = data.metaSn;
				sndData.bsisDtaSn = data.bsisDtaSn;
				sndData.isSpatial = "Y";
				var bfFn = null;
				var afFn = _thisVar.fnDeleteStUserBkmkRlt;
				_thisVarMain.sendAjax(async, url, sndData, bfFn, afFn);
			}else{
				
				 */
				
				
				
				_thisVar.body.find("#metaSn").val(data.metaSn);
				_thisVar.body.find("#histDe").val(data.histDe);
				
				
				if(_thisVarMain.isNull(data.code315))
				{//원자료
					_thisVar.body.find("#metaAtrbCode").val('OB01');
				}else{ 
					_thisVar.body.find("#metaAtrbCode").val(data.code315);
				}
				
				$.each(_thisVarMain.selectMenuInfo, function(idx, NMWNdata){
					
					if(NMWNdata.url == data.url && !_thisVarMain.isNull(NMWNdata.webMenuId1))
						{
						//console.log(NMWNdata);
							_thisVar.body.find("#rootMenuId").val(NMWNdata.webMenuId1);
							_thisVar.body.find("#pWebMenuId").val(NMWNdata.webMenuId1);
						}
					if(NMWNdata.url == data.url && !_thisVarMain.isNull(NMWNdata.webMenuId2))
						{
						//console.log(NMWNdata);
							_thisVar.body.find("#rootMenuId").val(NMWNdata.webMenuId1);
							_thisVar.body.find("#pWebMenuId").val(NMWNdata.webMenuId2);
						}
					if(NMWNdata.url == data.url && !_thisVarMain.isNull(NMWNdata.webMenuId3)) 
						{
						//console.log(NMWNdata);
							_thisVar.body.find("#rootMenuId").val(NMWNdata.webMenuId1);
							_thisVar.body.find("#pWebMenuId").val(NMWNdata.webMenuId3);
						}
				});
				
				var vUrl = data.url.replace("index", "detail");
				//console.log(_thisVar.body.find("#pWebMenuId").val());
				//console.log(_thisVar.body.find("#rootMenuId").val());
				//return;
				$.ajax({
					type : "post",
					url : "/user/meta/insertMetaView.do",
					async : false,
					data: {metaSn: data.metaSn, histDe: data.histDe, pWebMenuId: _thisVar.body.find("#pWebMenuId").val()},
					contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
					error : function(request,status,error){
						alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
					},
					success : function(data){
						fnFormSubmit("<c:url value='"+vUrl+"'/>", 'bkmkForm');
					}
				});
			//}
		});
		
		///////////////////////////////////////////////////////
		//리스트세팅끝////////////////////////////////////////////
		///////////////////////////////////////////////////////
		
		///////////////////////////////////////////////////////
		//페이징시작//////////////////////////////////////////////
		///////////////////////////////////////////////////////
		var firstPageNoOnPageList = resData.paginationInfo.firstPageNoOnPageList;
		var lastPageNoOnPageList = resData.paginationInfo.lastPageNoOnPageList;
		var currentPageNo = resData.paginationInfo.currentPageNo;
		var totalPageCount = resData.paginationInfo.totalPageCount;
		
		vHtml = "";
		vHtml += "<li>";
		
		if(currentPageNo > 1){
			vHtml += "	<a href=\"javascript:void(0);\" onclick=\"javascript:_thisVar.fnSearch(1); return false;\" title=\"처음\" class=\"first icon-angle-first\">";
			vHtml += "		<i class=\"\"></i>";
			vHtml += "	</a>";
			vHtml += "	<a href=\"javascript:void(0);\" onclick=\"javascript:_thisVar.fnSearch("+(currentPageNo-1)+"); return false;\" title=\"이전\" class=\"prev icon-angle-left\"></a>";
		}
		
		vHtml += "</li>";
		vHtml += "<li>";
		
		for(var i=firstPageNoOnPageList; i<=lastPageNoOnPageList; i++){
			var vClass = "";
			if(currentPageNo == i){
				vClass = "active";
			}
			
			vHtml += "	<a href=\"javascript:void(0);\" onclick=\"javascript:_thisVar.fnSearch("+i+"); return false;\" class=\""+vClass+"\">"+i+"</a>";
		}
		
		vHtml += "</li>";
		
		vHtml += "<li>";
		
		if(currentPageNo != totalPageCount){
			vHtml += "	<a href=\"javascript:void(0);\" onclick=\"javascript:_thisVar.fnSearch("+(currentPageNo+1)+"); return false;\" title=\"다음\" class=\"next icon-angle-right\"></a>";
			vHtml += "	<a href=\"javascript:void(0);\" onclick=\"javascript:_thisVar.fnSearch("+totalPageCount+"); return false;\" title=\"마지막\" class=\"last icon-angle-last\"></a>";
		}
		
		vHtml += "</li>";
		
		_thisVar.body.find(".paging-box.pb-md-32px>").html(vHtml);
		///////////////////////////////////////////////////////
		//페이징끝///////////////////////////////////////////////
		///////////////////////////////////////////////////////
	};
	
	//조회
	_thisVar.fnSearch = function(num){
		_thisVarMain.scrTop();
		
		var webMenuId1 = ""; //대메뉴
		var webMenuId2 = ""; //중메뉴
		var metaFactorCode = "1.5";
		
		//_thisVar.body.find(".tab-design-2-1.mb-24px.mb-md-16px").find("button.active").data().value
		
		try{
			webMenuId1 = _thisVar.body.find(".tab-design-2-1.mb-24px.mb-md-16px>>> button.active").data().value;
		}catch(e){
			webMenuId1 = ""; //대메뉴
		}
		
		try{
			webMenuId2 = _thisVar.body.find(".col-3.col-md.flex-b-md-129px button.btn-blue").data().value;
		}catch(e){
			if(webMenuId1=="NMEN000003") webMenuId2 = _thisVar.body.find(".col-3.col-md.flex-b-md-80px button.btn-blue").data().value;
		}
		
		if(webMenuId1 == "NMEN000001"){
			metaFactorCode = "1.51";
		}else if(webMenuId1 == "NMEN000002"){
			metaFactorCode = "1.52";
		}
		
		var async = false;
		var url = "/mypage/ajax/mypageBkmkList.do";
		var data = {};
		data.pageIndex = num;
		data.pageUnit = _thisVar.body.find("select[id=pageUnit]").val();
		data.pageSize = "10";
		data.searchKeyword = _thisVar.body.find("#searchKeyword").val();
		data.webMenuId1 = _thisVarMain.isNull(webMenuId1)?"":webMenuId1;
		data.webMenuId2 = _thisVarMain.isNull(webMenuId2)?"":webMenuId2;
		data.metaFactorCode = metaFactorCode;
		var bfFn = null;
		var afFn = _thisVar.setList;
		_thisVarMain.sendAjax(async, url, data, bfFn, afFn);
	};
	
	//검색
	_thisVar.body.find(".icon-search").click(function(){
		_thisVar.fnSearch(1);
	});
	
	//내용입력후 엔터키
	_thisVar.body.on('keyup', function(e){
		if(e.keyCode == 13){
			if($("input:focus").attr("id") =="searchKeyword"){
				_thisVar.fnSearch(1);
			}
		}
	});
	///////////////////////////////////////////////////////
	//시작//////////////////////////////////////////////////
	///////////////////////////////////////////////////////
	cusTumSlect(); //셀렉트박스 리플레쉬
	_thisVar.setMenuInfo(); //메뉴세팅
});
</script>