JS/CSS관련 ${pageContext.request.contextPath} 처리

This commit is contained in:
KNKIM 2021-09-17 11:10:13 +09:00
parent ae9128fa6c
commit cbc5f23cca
21 changed files with 1267 additions and 1267 deletions

View File

@ -39,9 +39,9 @@
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">

View File

@ -39,9 +39,9 @@
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">

View File

@ -39,9 +39,9 @@
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">

View File

@ -38,8 +38,8 @@
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- W2UI --> <!-- W2UI -->
<link rel="stylesheet" type="text/css" href="/nlib/js/w2ui/w2ui-nlib.css" /> <link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/js/w2ui/w2ui-nlib.css" />
<script type="text/javascript" src="/nlib/js/w2ui/w2ui-1.5.min.js"></script> <script type="text/javascript" src="${pageContext.request.contextPath}/js/w2ui/w2ui-1.5.min.js"></script>
</head> </head>
<body> <body>

View File

@ -39,9 +39,9 @@
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">

View File

@ -39,9 +39,9 @@
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
$(function() { $(function() {

View File

@ -39,9 +39,9 @@
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">

View File

@ -39,9 +39,9 @@
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
var GRID_INDEX_OF_READYN = 5; var GRID_INDEX_OF_READYN = 5;

View File

@ -1,165 +1,165 @@
<% <%
/** /**
* <pre> * <pre>
* @Class Name : listInterests.jsp * @Class Name : listInterests.jsp
* *
* @Description : 관심 자료를 조회한다. * @Description : 관심 자료를 조회한다.
* *
* *
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021) * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
* *
* </pre> * </pre>
* *
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 2021. 7. 28. JSYOO 최초 생성 * @ 2021. 7. 28. JSYOO 최초 생성
* *
* *
* @author 이씨플라자 * DIGITALSHIP JSYOO * @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 7. 28. * @since 2021. 7. 28.
* @version 1.0 * @version 1.0
* *
*/ */
%> %>
<%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<c:set var="pageTitle">관심 자료</c:set> <c:set var="pageTitle">관심 자료</c:set>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
window.onload = function() { window.onload = function() {
//======================================================= //=======================================================
// 그리드 생성 환경설정 // 그리드 생성 환경설정
//======================================================= //=======================================================
$("#jsGrid").jsGrid({ $("#jsGrid").jsGrid({
pageSize : $("#pageSize").val(), pageSize : $("#pageSize").val(),
controller: { controller: {
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수 loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
var data = $.Deferred(); var data = $.Deferred();
//====================================== //======================================
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정) // 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
//====================================== //======================================
var reqUrl = "${pageContext.request.contextPath}/collection/listInterestsAjax.do"; var reqUrl = "${pageContext.request.contextPath}/collection/listInterestsAjax.do";
var searchKeyword = document.articleForm.searchKeyword.value; var searchKeyword = document.articleForm.searchKeyword.value;
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val()); var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val()); var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
$("#pageIndex").val(pageIndex); $("#pageIndex").val(pageIndex);
var inputData = { var inputData = {
"searchKeyword" : searchKeyword "searchKeyword" : searchKeyword
, "pageIndex" : pageIndex , "pageIndex" : pageIndex
, "pageSize": pageSize}; , "pageSize": pageSize};
//-------------------------------------- //--------------------------------------
// 요청 처리 // 요청 처리
//-------------------------------------- //--------------------------------------
$.ajax({ $.ajax({
type: "post", type: "post",
contentType: "application/json; charset=utf-8", contentType: "application/json; charset=utf-8",
url: reqUrl, url: reqUrl,
dataType: "json", dataType: "json",
data: JSON.stringify(inputData), data: JSON.stringify(inputData),
}).done(function(response){ }).done(function(response){
<% <%
// 그리드 데이터 예시 : // 그리드 데이터 예시 :
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }] // (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255} // (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
%> %>
data.resolve(JSON.parse(response)); data.resolve(JSON.parse(response));
}); });
return data.promise(); return data.promise();
} // loadData } // loadData
}, },
//====================================== //======================================
// 그리드 컬럼 정의 (각 요청에 맞게 조정) // 그리드 컬럼 정의 (각 요청에 맞게 조정)
//====================================== //======================================
fields: [ fields: [
{ width: 80, align: "center" , itemTemplate: function (_, item) { { width: 80, align: "center" , itemTemplate: function (_, item) {
var btn = $("<input type='checkbox'>").click(function (e) { var btn = $("<input type='checkbox'>").click(function (e) {
alert("chk"); alert("chk");
e.stopPropagation(); e.stopPropagation();
}); });
return $("<div>").append(item.loanExtension).append("&nbsp;&nbsp;&nbsp;").append(btn); return $("<div>").append(item.loanExtension).append("&nbsp;&nbsp;&nbsp;").append(btn);
} }
}, },
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"}, { title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" }, { title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" }, { title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
{ title:"저자", name: "author", type: "text", width: 100, align: "center"}, { title:"저자", name: "author", type: "text", width: 100, align: "center"},
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"} { title:"출판사", name: "publisher", type: "text", width: 100, align: "center"}
] ]
}); });
// 페이지 크기 변경시 재조회 // 페이지 크기 변경시 재조회
$("#pageSize").on("change", function(e) { $("#pageSize").on("change", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
// 검색 버튼 클릭 // 검색 버튼 클릭
$("#btnSearch").on("click", function(e) { $("#btnSearch").on("click", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
//초기 자료 조회 //초기 자료 조회
fn_search_article(); fn_search_article();
}; // window.onload }; // window.onload
// 그리드 데이터 조회 호출 // 그리드 데이터 조회 호출
function fn_search_article(pageSize, pageIndex) { function fn_search_article(pageSize, pageIndex) {
$("#jsGrid").jsGrid("search" $("#jsGrid").jsGrid("search"
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})), , {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1)) 'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
} }
); );
} }
</script> </script>
</head> </head>
<body> <body>
<h1>${pageTitle }</h1> <h1>${pageTitle }</h1>
<form name="articleForm" id="articleForm" <form name="articleForm" id="articleForm"
method="post"> method="post">
<!-- 검색조건 --> <!-- 검색조건 -->
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수"> <select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status"> <c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option> <option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
</c:forEach> </c:forEach>
</select> </select>
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" /> <input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" /> <input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
<input type="button" name="btnSearch" id="btnSearch" value="검색" /> <input type="button" name="btnSearch" id="btnSearch" value="검색" />
<div id="jsGrid" name="jsGrid" style="height: 100%"></div> <div id="jsGrid" name="jsGrid" style="height: 100%"></div>
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly /> <input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
</form> </form>
</body> </body>
</html> </html>

File diff suppressed because one or more lines are too long

View File

@ -1,159 +1,159 @@
<% <%
/** /**
* <pre> * <pre>
* @Class Name : listCanceledRentItems.jsp * @Class Name : listCanceledRentItems.jsp
* *
* @Description : 대출 취소목록을 조회한다. * @Description : 대출 취소목록을 조회한다.
* *
* *
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021) * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
* *
* </pre> * </pre>
* *
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 2021. 7. 21. JSYOO 최초 생성 * @ 2021. 7. 21. JSYOO 최초 생성
* *
* *
* @author 이씨플라자 * DIGITALSHIP JSYOO * @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 7. 21. * @since 2021. 7. 21.
* @version 1.0 * @version 1.0
* *
*/ */
%> %>
<%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<c:set var="pageTitle">대출 취소 목록</c:set> <c:set var="pageTitle">대출 취소 목록</c:set>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
window.onload = function() { window.onload = function() {
//======================================================= //=======================================================
// 그리드 생성 환경설정 // 그리드 생성 환경설정
//======================================================= //=======================================================
$("#jsGrid").jsGrid({ $("#jsGrid").jsGrid({
pageSize : $("#pageSize").val(), pageSize : $("#pageSize").val(),
controller: { controller: {
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수 loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
var data = $.Deferred(); var data = $.Deferred();
//====================================== //======================================
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정) // 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
//====================================== //======================================
var reqUrl = "${pageContext.request.contextPath}/rent/listCanceledRentItemsAjax.do"; var reqUrl = "${pageContext.request.contextPath}/rent/listCanceledRentItemsAjax.do";
var searchKeyword = document.articleForm.searchKeyword.value; var searchKeyword = document.articleForm.searchKeyword.value;
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val()); var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val()); var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
$("#pageIndex").val(pageIndex); $("#pageIndex").val(pageIndex);
var inputData = { var inputData = {
"searchKeyword" : searchKeyword "searchKeyword" : searchKeyword
, "pageIndex" : pageIndex , "pageIndex" : pageIndex
, "pageSize": pageSize}; , "pageSize": pageSize};
//-------------------------------------- //--------------------------------------
// 요청 처리 // 요청 처리
//-------------------------------------- //--------------------------------------
$.ajax({ $.ajax({
type: "post", type: "post",
contentType: "application/json; charset=utf-8", contentType: "application/json; charset=utf-8",
url: reqUrl, url: reqUrl,
dataType: "json", dataType: "json",
data: JSON.stringify(inputData), data: JSON.stringify(inputData),
}).done(function(response){ }).done(function(response){
<% <%
// 그리드 데이터 예시 : // 그리드 데이터 예시 :
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }] // (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255} // (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
%> %>
data.resolve(JSON.parse(response)); data.resolve(JSON.parse(response));
}); });
return data.promise(); return data.promise();
} // loadData } // loadData
}, },
//====================================== //======================================
// 그리드 컬럼 정의 (각 요청에 맞게 조정) // 그리드 컬럼 정의 (각 요청에 맞게 조정)
//====================================== //======================================
fields: [ fields: [
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"}, { title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" }, { title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" }, { title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
{ title:"저자", name: "author", type: "text", width: 100, align: "center"}, { title:"저자", name: "author", type: "text", width: 100, align: "center"},
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"}, { title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
{ title:"취소일자", name: "rentDate", type: "text", width: 100, align: "center"} { title:"취소일자", name: "rentDate", type: "text", width: 100, align: "center"}
] ]
}); });
// 페이지 크기 변경시 재조회 // 페이지 크기 변경시 재조회
$("#pageSize").on("change", function(e) { $("#pageSize").on("change", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
// 검색 버튼 클릭 // 검색 버튼 클릭
$("#btnSearch").on("click", function(e) { $("#btnSearch").on("click", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
//초기 자료 조회 //초기 자료 조회
fn_search_article(); fn_search_article();
}; // window.onload }; // window.onload
// 그리드 데이터 조회 호출 // 그리드 데이터 조회 호출
function fn_search_article(pageSize, pageIndex) { function fn_search_article(pageSize, pageIndex) {
$("#jsGrid").jsGrid("search" $("#jsGrid").jsGrid("search"
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})), , {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1)) 'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
} }
); );
} }
</script> </script>
</head> </head>
<body> <body>
<h1>${pageTitle }</h1> <h1>${pageTitle }</h1>
<form name="articleForm" id="articleForm" <form name="articleForm" id="articleForm"
method="post"> method="post">
<!-- 검색조건 --> <!-- 검색조건 -->
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수"> <select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status"> <c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option> <option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
</c:forEach> </c:forEach>
</select> </select>
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" /> <input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" /> <input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
<input type="button" name="btnSearch" id="btnSearch" value="검색" /> <input type="button" name="btnSearch" id="btnSearch" value="검색" />
<div id="jsGrid" name="jsGrid" style="height: 100%"></div> <div id="jsGrid" name="jsGrid" style="height: 100%"></div>
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly /> <input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
</form> </form>
</body> </body>
</html> </html>

View File

@ -1,170 +1,170 @@
<% <%
/** /**
* <pre> * <pre>
* @Class Name : listPostpones.jsp * @Class Name : listPostpones.jsp
* *
* @Description : 반납 연기 목록을 조회한다. * @Description : 반납 연기 목록을 조회한다.
* *
* *
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021) * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
* *
* </pre> * </pre>
* *
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 2021. 7. 30. JSYOO 최초 생성 * @ 2021. 7. 30. JSYOO 최초 생성
* *
* *
* @author 이씨플라자 * DIGITALSHIP JSYOO * @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 7. 30. * @since 2021. 7. 30.
* @version 1.0 * @version 1.0
* *
*/ */
%> %>
<%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<c:set var="pageTitle">반납 연기 목록</c:set> <c:set var="pageTitle">반납 연기 목록</c:set>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
window.onload = function() { window.onload = function() {
//======================================================= //=======================================================
// 그리드 생성 환경설정 // 그리드 생성 환경설정
//======================================================= //=======================================================
$("#jsGrid").jsGrid({ $("#jsGrid").jsGrid({
pageSize : $("#pageSize").val(), pageSize : $("#pageSize").val(),
controller: { controller: {
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수 loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
var data = $.Deferred(); var data = $.Deferred();
//====================================== //======================================
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정) // 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
//====================================== //======================================
var reqUrl = "${pageContext.request.contextPath}/rent/listPostponesAjax.do"; var reqUrl = "${pageContext.request.contextPath}/rent/listPostponesAjax.do";
var searchKeyword = document.articleForm.searchKeyword.value; var searchKeyword = document.articleForm.searchKeyword.value;
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val()); var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val()); var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
$("#pageIndex").val(pageIndex); $("#pageIndex").val(pageIndex);
var inputData = { var inputData = {
"searchKeyword" : searchKeyword "searchKeyword" : searchKeyword
, "pageIndex" : pageIndex , "pageIndex" : pageIndex
, "pageSize": pageSize}; , "pageSize": pageSize};
//-------------------------------------- //--------------------------------------
// 요청 처리 // 요청 처리
//-------------------------------------- //--------------------------------------
$.ajax({ $.ajax({
type: "post", type: "post",
contentType: "application/json; charset=utf-8", contentType: "application/json; charset=utf-8",
url: reqUrl, url: reqUrl,
dataType: "json", dataType: "json",
data: JSON.stringify(inputData), data: JSON.stringify(inputData),
}).done(function(response){ }).done(function(response){
<% <%
// 그리드 데이터 예시 : // 그리드 데이터 예시 :
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }] // (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255} // (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
%> %>
data.resolve(JSON.parse(response)); data.resolve(JSON.parse(response));
}); });
return data.promise(); return data.promise();
} // loadData } // loadData
}, },
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수 rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
// 클릭된 행의 자료 객체 // 클릭된 행의 자료 객체
var getData = args.item; var getData = args.item;
// 추출할 컬럼의 데이터 가져오기 // 추출할 컬럼의 데이터 가져오기
var articleNo = getData["articleNo"]; var articleNo = getData["articleNo"];
}, },
//====================================== //======================================
// 그리드 컬럼 정의 (각 요청에 맞게 조정) // 그리드 컬럼 정의 (각 요청에 맞게 조정)
//====================================== //======================================
fields: [ fields: [
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"}, { title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" }, { title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" }, { title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
{ title:"저자", name: "author", type: "text", width: 100, align: "center"}, { title:"저자", name: "author", type: "text", width: 100, align: "center"},
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"}, { title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
{ title:"대여일", name: "rentDate", type: "text", width: 100, align: "center"}, { title:"대여일", name: "rentDate", type: "text", width: 100, align: "center"},
{ title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"} { title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"}
] ]
}); });
// 페이지 크기 변경시 재조회 // 페이지 크기 변경시 재조회
$("#pageSize").on("change", function(e) { $("#pageSize").on("change", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
// 검색 버튼 클릭 // 검색 버튼 클릭
$("#btnSearch").on("click", function(e) { $("#btnSearch").on("click", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
//초기 자료 조회 //초기 자료 조회
fn_search_article(); fn_search_article();
}; // window.onload }; // window.onload
// 그리드 데이터 조회 호출 // 그리드 데이터 조회 호출
function fn_search_article(pageSize, pageIndex) { function fn_search_article(pageSize, pageIndex) {
$("#jsGrid").jsGrid("search" $("#jsGrid").jsGrid("search"
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})), , {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1)) 'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
} }
); );
} }
</script> </script>
</head> </head>
<body> <body>
<h1>${pageTitle }</h1> <h1>${pageTitle }</h1>
<form name="articleForm" id="articleForm" <form name="articleForm" id="articleForm"
method="post"> method="post">
<!-- 검색조건 --> <!-- 검색조건 -->
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수"> <select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status"> <c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option> <option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
</c:forEach> </c:forEach>
</select> </select>
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" /> <input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" /> <input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
<input type="button" name="btnSearch" id="btnSearch" value="검색" /> <input type="button" name="btnSearch" id="btnSearch" value="검색" />
<div id="jsGrid" name="jsGrid" style="height: 100%"></div> <div id="jsGrid" name="jsGrid" style="height: 100%"></div>
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly /> <input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
<input type="button" value="대출 취소목록" onClick="location.href='${pageContext.request.contextPath}/rent/listCanceledRentItems.do'"> <input type="button" value="대출 취소목록" onClick="location.href='${pageContext.request.contextPath}/rent/listCanceledRentItems.do'">
<input type="button" value="반납 연기" onClick="location.href='${pageContext.request.contextPath}/rent/listCanceledRentItems.do'"> <input type="button" value="반납 연기" onClick="location.href='${pageContext.request.contextPath}/rent/listCanceledRentItems.do'">
</form> </form>
</body> </body>
</html> </html>

View File

@ -1,171 +1,171 @@
<% <%
/** /**
* <pre> * <pre>
* @Class Name : listRentItems.jsp * @Class Name : listRentItems.jsp
* *
* @Description : 대출 목록을 조회한다. * @Description : 대출 목록을 조회한다.
* *
* *
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021) * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
* *
* </pre> * </pre>
* *
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 2021. 7. 21. JSYOO 최초 생성 * @ 2021. 7. 21. JSYOO 최초 생성
* *
* *
* @author 이씨플라자 * DIGITALSHIP JSYOO * @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 7. 21. * @since 2021. 7. 21.
* @version 1.0 * @version 1.0
* *
*/ */
%> %>
<%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<c:set var="pageTitle">대출 목록</c:set> <c:set var="pageTitle">대출 목록</c:set>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
window.onload = function() { window.onload = function() {
//======================================================= //=======================================================
// 그리드 생성 환경설정 // 그리드 생성 환경설정
//======================================================= //=======================================================
$("#jsGrid").jsGrid({ $("#jsGrid").jsGrid({
pageSize : $("#pageSize").val(), pageSize : $("#pageSize").val(),
controller: { controller: {
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수 loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
var data = $.Deferred(); var data = $.Deferred();
//====================================== //======================================
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정) // 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
//====================================== //======================================
var reqUrl = "${pageContext.request.contextPath}/rent/listRentItemsAjax.do"; var reqUrl = "${pageContext.request.contextPath}/rent/listRentItemsAjax.do";
var searchKeyword = document.articleForm.searchKeyword.value; var searchKeyword = document.articleForm.searchKeyword.value;
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val()); var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val()); var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
$("#pageIndex").val(pageIndex); $("#pageIndex").val(pageIndex);
var inputData = { var inputData = {
"searchKeyword" : searchKeyword "searchKeyword" : searchKeyword
, "pageIndex" : pageIndex , "pageIndex" : pageIndex
, "pageSize": pageSize}; , "pageSize": pageSize};
//-------------------------------------- //--------------------------------------
// 요청 처리 // 요청 처리
//-------------------------------------- //--------------------------------------
$.ajax({ $.ajax({
type: "post", type: "post",
contentType: "application/json; charset=utf-8", contentType: "application/json; charset=utf-8",
url: reqUrl, url: reqUrl,
dataType: "json", dataType: "json",
data: JSON.stringify(inputData), data: JSON.stringify(inputData),
}).done(function(response){ }).done(function(response){
<% <%
// 그리드 데이터 예시 : // 그리드 데이터 예시 :
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }] // (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255} // (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
%> %>
data.resolve(JSON.parse(response)); data.resolve(JSON.parse(response));
}); });
return data.promise(); return data.promise();
} // loadData } // loadData
}, },
//====================================== //======================================
// 그리드 컬럼 정의 (각 요청에 맞게 조정) // 그리드 컬럼 정의 (각 요청에 맞게 조정)
//====================================== //======================================
fields: [ fields: [
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"}, { title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" }, { title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" }, { title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
{ title:"저자", name: "author", type: "text", width: 100, align: "center"}, { title:"저자", name: "author", type: "text", width: 100, align: "center"},
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"}, { title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
{ title:"대여일", name: "rentDate", type: "text", width: 100, align: "center"}, { title:"대여일", name: "rentDate", type: "text", width: 100, align: "center"},
{ title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"}, { title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"},
{ title:"대출연장", name: "loanExtension", type: "text", width: 80, align: "center" , itemTemplate: function (_, item) { { title:"대출연장", name: "loanExtension", type: "text", width: 80, align: "center" , itemTemplate: function (_, item) {
var btn = $("<button type='button'>").text("연장").click(function (e) { var btn = $("<button type='button'>").text("연장").click(function (e) {
alert("Clicked!"); alert("Clicked!");
e.stopPropagation(); e.stopPropagation();
}); });
return $("<div>").append(item.loanExtension).append("&nbsp;&nbsp;&nbsp;").append(btn); return $("<div>").append(item.loanExtension).append("&nbsp;&nbsp;&nbsp;").append(btn);
} }
} }
] ]
}); });
// 페이지 크기 변경시 재조회 // 페이지 크기 변경시 재조회
$("#pageSize").on("change", function(e) { $("#pageSize").on("change", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
// 검색 버튼 클릭 // 검색 버튼 클릭
$("#btnSearch").on("click", function(e) { $("#btnSearch").on("click", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
//초기 자료 조회 //초기 자료 조회
fn_search_article(); fn_search_article();
}; // window.onload }; // window.onload
// 그리드 데이터 조회 호출 // 그리드 데이터 조회 호출
function fn_search_article(pageSize, pageIndex) { function fn_search_article(pageSize, pageIndex) {
$("#jsGrid").jsGrid("search" $("#jsGrid").jsGrid("search"
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})), , {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1)) 'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
} }
); );
} }
</script> </script>
</head> </head>
<body> <body>
<h1>${pageTitle }</h1> <h1>${pageTitle }</h1>
<form name="articleForm" id="articleForm" <form name="articleForm" id="articleForm"
method="post"> method="post">
<!-- 검색조건 --> <!-- 검색조건 -->
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수"> <select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status"> <c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option> <option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
</c:forEach> </c:forEach>
</select> </select>
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" /> <input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" /> <input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
<input type="button" name="btnSearch" id="btnSearch" value="검색" /> <input type="button" name="btnSearch" id="btnSearch" value="검색" />
<div id="jsGrid" name="jsGrid" style="height: 100%"></div> <div id="jsGrid" name="jsGrid" style="height: 100%"></div>
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly /> <input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
<input type="button" value="대출 취소목록" onClick="location.href='${pageContext.request.contextPath}/rent/listCanceledRentItems.do'"> <input type="button" value="대출 취소목록" onClick="location.href='${pageContext.request.contextPath}/rent/listCanceledRentItems.do'">
<input type="button" value="반납 연기" onClick="location.href='${pageContext.request.contextPath}/rent/listPostpones.do'"> <input type="button" value="반납 연기" onClick="location.href='${pageContext.request.contextPath}/rent/listPostpones.do'">
</form> </form>
</body> </body>
</html> </html>

View File

@ -1,179 +1,179 @@
<% <%
/** /**
* <pre> * <pre>
* @Class Name : listRequestsForViewingItem.jsp * @Class Name : listRequestsForViewingItem.jsp
* *
* @Description : 열람 요청을 조회한다. * @Description : 열람 요청을 조회한다.
* *
* *
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021) * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
* *
* </pre> * </pre>
* *
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 2021. 7. 21. JSYOO 최초 생성 * @ 2021. 7. 21. JSYOO 최초 생성
* *
* *
* @author 이씨플라자 * DIGITALSHIP JSYOO * @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 7. 21. * @since 2021. 7. 21.
* @version 1.0 * @version 1.0
* *
*/ */
%> %>
<%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<c:set var="pageTitle">열람 요청</c:set> <c:set var="pageTitle">열람 요청</c:set>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
window.onload = function() { window.onload = function() {
//======================================================= //=======================================================
// 그리드 생성 환경설정 // 그리드 생성 환경설정
//======================================================= //=======================================================
$("#jsGrid").jsGrid({ $("#jsGrid").jsGrid({
pageSize : $("#pageSize").val(), pageSize : $("#pageSize").val(),
controller: { controller: {
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수 loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
var data = $.Deferred(); var data = $.Deferred();
//====================================== //======================================
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정) // 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
//====================================== //======================================
var reqUrl = "${pageContext.request.contextPath}/rent/listRequestsForViewingItemAjax.do"; var reqUrl = "${pageContext.request.contextPath}/rent/listRequestsForViewingItemAjax.do";
var searchKeyword = document.articleForm.searchKeyword.value; var searchKeyword = document.articleForm.searchKeyword.value;
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val()); var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val()); var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
$("#pageIndex").val(pageIndex); $("#pageIndex").val(pageIndex);
var inputData = { var inputData = {
"searchKeyword" : searchKeyword "searchKeyword" : searchKeyword
, "pageIndex" : pageIndex , "pageIndex" : pageIndex
, "pageSize": pageSize}; , "pageSize": pageSize};
//-------------------------------------- //--------------------------------------
// 요청 처리 // 요청 처리
//-------------------------------------- //--------------------------------------
$.ajax({ $.ajax({
type: "post", type: "post",
contentType: "application/json; charset=utf-8", contentType: "application/json; charset=utf-8",
url: reqUrl, url: reqUrl,
dataType: "json", dataType: "json",
data: JSON.stringify(inputData), data: JSON.stringify(inputData),
}).done(function(response){ }).done(function(response){
<% <%
// 그리드 데이터 예시 : // 그리드 데이터 예시 :
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }] // (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255} // (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
%> %>
data.resolve(JSON.parse(response)); data.resolve(JSON.parse(response));
}); });
return data.promise(); return data.promise();
} // loadData } // loadData
}, },
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수 rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
// 클릭된 행의 자료 객체 // 클릭된 행의 자료 객체
var getData = args.item; var getData = args.item;
// 추출할 컬럼의 데이터 가져오기 // 추출할 컬럼의 데이터 가져오기
var articleNo = getData["articleNo"]; var articleNo = getData["articleNo"];
// 상세 내용 보기 // 상세 내용 보기
fn_view_detail(articleNo); fn_view_detail(articleNo);
}, },
//====================================== //======================================
// 그리드 컬럼 정의 (각 요청에 맞게 조정) // 그리드 컬럼 정의 (각 요청에 맞게 조정)
//====================================== //======================================
fields: [ fields: [
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"}, { title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" }, { title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" }, { title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
{ title:"저자", name: "author", type: "text", width: 100, align: "center"}, { title:"저자", name: "author", type: "text", width: 100, align: "center"},
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"}, { title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
{ title:"요청일자", name: "reqDate", type: "text", width: 100, align: "center"}, { title:"요청일자", name: "reqDate", type: "text", width: 100, align: "center"},
{ title:"상태", name: "state", type: "text", width: 100, align: "center"}, { title:"상태", name: "state", type: "text", width: 100, align: "center"},
{ title:"열람기간", name: "readingPeriod", type: "text", width: 80, align: "center"} { title:"열람기간", name: "readingPeriod", type: "text", width: 80, align: "center"}
] ]
}); });
// 페이지 크기 변경시 재조회 // 페이지 크기 변경시 재조회
$("#pageSize").on("change", function(e) { $("#pageSize").on("change", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
// 검색 버튼 클릭 // 검색 버튼 클릭
$("#btnSearch").on("click", function(e) { $("#btnSearch").on("click", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
//초기 자료 조회 //초기 자료 조회
fn_search_article(); fn_search_article();
}; // window.onload }; // window.onload
// 선택한 게시글 상세 보기로 이동 // 선택한 게시글 상세 보기로 이동
function fn_view_detail(articleNo) { function fn_view_detail(articleNo) {
$("#articleNo").val(articleNo); $("#articleNo").val(articleNo);
$("#articleForm").attr("action", "${pageContext.request.contextPath}/rent/selectRequestInfoForViewingItem.do"); $("#articleForm").attr("action", "${pageContext.request.contextPath}/rent/selectRequestInfoForViewingItem.do");
$("#articleForm").submit(); $("#articleForm").submit();
} }
// 그리드 데이터 조회 호출 // 그리드 데이터 조회 호출
function fn_search_article(pageSize, pageIndex) { function fn_search_article(pageSize, pageIndex) {
$("#jsGrid").jsGrid("search" $("#jsGrid").jsGrid("search"
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})), , {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1)) 'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
} }
); );
} }
</script> </script>
</head> </head>
<body> <body>
<h1>${pageTitle }</h1> <h1>${pageTitle }</h1>
<form name="articleForm" id="articleForm" <form name="articleForm" id="articleForm"
method="post"> method="post">
<!-- 검색조건 --> <!-- 검색조건 -->
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수"> <select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status"> <c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option> <option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
</c:forEach> </c:forEach>
</select> </select>
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" /> <input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" /> <input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
<input type="button" name="btnSearch" id="btnSearch" value="검색" /> <input type="button" name="btnSearch" id="btnSearch" value="검색" />
<div id="jsGrid" name="jsGrid" style="height: 100%"></div> <div id="jsGrid" name="jsGrid" style="height: 100%"></div>
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly /> <input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
</form> </form>
</body> </body>
</html> </html>

View File

@ -1,187 +1,187 @@
<% <%
/** /**
* <pre> * <pre>
* @Class Name : listReserVations.jsp * @Class Name : listReserVations.jsp
* *
* @Description : 대출 예약 목록을 조회한다. * @Description : 대출 예약 목록을 조회한다.
* *
* *
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021) * @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
* *
* </pre> * </pre>
* *
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------------ -------- --------------------------- * @ ------------ -------- ---------------------------
* @ 2021. 7. 21. JSYOO 최초 생성 * @ 2021. 7. 21. JSYOO 최초 생성
* *
* *
* @author 이씨플라자 * DIGITALSHIP JSYOO * @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 7. 21. * @since 2021. 7. 21.
* @version 1.0 * @version 1.0
* *
*/ */
%> %>
<%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<c:set var="pageTitle">대출 예약 목록</c:set> <c:set var="pageTitle">대출 예약 목록</c:set>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>${pageTitle}</title> <title>${pageTitle}</title>
<!-- GRID --> <!-- GRID -->
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" /> <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid-theme.css" />
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script> <script src="${pageContext.request.contextPath}/js/jsgrid/nlib-jsgrid.js"></script>
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
window.onload = function() { window.onload = function() {
//======================================================= //=======================================================
// 그리드 생성 환경설정 // 그리드 생성 환경설정
//======================================================= //=======================================================
$("#jsGrid").jsGrid({ $("#jsGrid").jsGrid({
pageSize : $("#pageSize").val(), pageSize : $("#pageSize").val(),
controller: { controller: {
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수 loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
var data = $.Deferred(); var data = $.Deferred();
//====================================== //======================================
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정) // 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
//====================================== //======================================
var reqUrl = "${pageContext.request.contextPath}/rent/listReservationsAjax.do"; var reqUrl = "${pageContext.request.contextPath}/rent/listReservationsAjax.do";
var searchKeyword = document.articleForm.searchKeyword.value; var searchKeyword = document.articleForm.searchKeyword.value;
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val()); var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val()); var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
$("#pageIndex").val(pageIndex); $("#pageIndex").val(pageIndex);
var inputData = { var inputData = {
"searchKeyword" : searchKeyword "searchKeyword" : searchKeyword
, "pageIndex" : pageIndex , "pageIndex" : pageIndex
, "pageSize": pageSize}; , "pageSize": pageSize};
//-------------------------------------- //--------------------------------------
// 요청 처리 // 요청 처리
//-------------------------------------- //--------------------------------------
$.ajax({ $.ajax({
type: "post", type: "post",
contentType: "application/json; charset=utf-8", contentType: "application/json; charset=utf-8",
url: reqUrl, url: reqUrl,
dataType: "json", dataType: "json",
data: JSON.stringify(inputData), data: JSON.stringify(inputData),
}).done(function(response){ }).done(function(response){
<% <%
// 그리드 데이터 예시 : // 그리드 데이터 예시 :
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }] // (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255} // (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
%> %>
data.resolve(JSON.parse(response)); data.resolve(JSON.parse(response));
}); });
return data.promise(); return data.promise();
} // loadData } // loadData
}, },
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수 rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
// 클릭된 행의 자료 객체 // 클릭된 행의 자료 객체
var getData = args.item; var getData = args.item;
// 추출할 컬럼의 데이터 가져오기 // 추출할 컬럼의 데이터 가져오기
var articleNo = getData["articleNo"]; var articleNo = getData["articleNo"];
// 상세 내용 보기 // 상세 내용 보기
fn_view_detail(articleNo); fn_view_detail(articleNo);
}, },
//====================================== //======================================
// 그리드 컬럼 정의 (각 요청에 맞게 조정) // 그리드 컬럼 정의 (각 요청에 맞게 조정)
//====================================== //======================================
fields: [ fields: [
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"}, { title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" }, { title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" }, { title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
{ title:"저자", name: "author", type: "text", width: 100, align: "center"}, { title:"저자", name: "author", type: "text", width: 100, align: "center"},
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"}, { title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
{ title:"예약일", name: "rentDate", type: "text", width: 100, align: "center"}, { title:"예약일", name: "rentDate", type: "text", width: 100, align: "center"},
{ title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"}, { title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"},
{ title:"예약취소", name:"", type: "text", width: 80, align: "center" , itemTemplate: function (_, item) { { title:"예약취소", name:"", type: "text", width: 80, align: "center" , itemTemplate: function (_, item) {
var btn = $("<button type='button'>").text("취소").click(function (e) { var btn = $("<button type='button'>").text("취소").click(function (e) {
alert("Clicked!"); alert("Clicked!");
e.stopPropagation(); e.stopPropagation();
}); });
return $("<div>").append(item.loanExtension).append("&nbsp;&nbsp;&nbsp;").append(btn); return $("<div>").append(item.loanExtension).append("&nbsp;&nbsp;&nbsp;").append(btn);
} }
} }
] ]
}); });
// 페이지 크기 변경시 재조회 // 페이지 크기 변경시 재조회
$("#pageSize").on("change", function(e) { $("#pageSize").on("change", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
// 검색 버튼 클릭 // 검색 버튼 클릭
$("#btnSearch").on("click", function(e) { $("#btnSearch").on("click", function(e) {
fn_search_article($("#pageSize").val(), 1); fn_search_article($("#pageSize").val(), 1);
}); });
//초기 자료 조회 //초기 자료 조회
fn_search_article(); fn_search_article();
}; // window.onload }; // window.onload
// 선택한 게시글 상세 보기로 이동 // 선택한 게시글 상세 보기로 이동
function fn_view_detail(articleNo) { function fn_view_detail(articleNo) {
$("#articleNo").val(articleNo); $("#articleNo").val(articleNo);
$("#articleForm").attr("action", "${pageContext.request.contextPath}/board/selectQnA.do"); $("#articleForm").attr("action", "${pageContext.request.contextPath}/board/selectQnA.do");
$("#articleForm").submit(); $("#articleForm").submit();
} }
// 그리드 데이터 조회 호출 // 그리드 데이터 조회 호출
function fn_search_article(pageSize, pageIndex) { function fn_search_article(pageSize, pageIndex) {
$("#jsGrid").jsGrid("search" $("#jsGrid").jsGrid("search"
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})), , {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1)) 'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
} }
); );
} }
</script> </script>
</head> </head>
<body> <body>
<h1>${pageTitle }</h1> <h1>${pageTitle }</h1>
<form name="articleForm" id="articleForm" <form name="articleForm" id="articleForm"
method="post"> method="post">
<!-- 검색조건 --> <!-- 검색조건 -->
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수"> <select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status"> <c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option> <option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
</c:forEach> </c:forEach>
</select> </select>
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" /> <input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" /> <input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
<input type="button" name="btnSearch" id="btnSearch" value="검색" /> <input type="button" name="btnSearch" id="btnSearch" value="검색" />
<div id="jsGrid" name="jsGrid" style="height: 100%"></div> <div id="jsGrid" name="jsGrid" style="height: 100%"></div>
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly /> <input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
</form> </form>
</body> </body>
</html> </html>

View File

@ -5,9 +5,9 @@ http://localhost:8080/nlib/fileupload/js/dropzone.css
--> -->
<meta charset="utf-8"> <meta charset="utf-8">
<link rel="stylesheet" href="/nlib/js/fileupload/dropzone.css" /> <link rel="stylesheet" href="/js/fileupload/dropzone.css" />
<link rel="stylesheet" href="/nlib/js/fileupload/style.css" /> <link rel="stylesheet" href="/js/fileupload/style.css" />
<script src="/nlib/js/fileupload/dropzone.js"></script> <script src="/js/fileupload/dropzone.js"></script>
<!-- <!--

View File

@ -4,11 +4,11 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>Grid</title> <title>Grid</title>
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/jsgrid.min.css" /> <link type="text/css" rel="stylesheet" href="/js/jsgrid/jsgrid.min.css" />
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/jsgrid-theme.min.css" /> <link type="text/css" rel="stylesheet" href="/js/jsgrid/jsgrid-theme.min.css" />
<script src="/nlib/js/jquery/jquery.min.js"></script> <script src="/js/jquery/jquery.min.js"></script>
<script src="/nlib/js/jsgrid/jsgrid.min.js"></script> <script src="/js/jsgrid/jsgrid.min.js"></script>
</head> </head>
<body> <body>

View File

@ -3,8 +3,8 @@
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>Grid</title> <title>Grid</title>
<link rel="stylesheet" type="text/css" href="/nlib/js/jqgrid/ui.jqgrid.css"/> <link rel="stylesheet" type="text/css" href="/js/jqgrid/ui.jqgrid.css"/>
<script type="text/javascript" src="/nlib/js/jqgrid/jquery.jqGrid.min.js'/>"></script> <script type="text/javascript" src="/js/jqgrid/jquery.jqGrid.min.js'/>"></script>
</head> </head>
<body> <body>

View File

@ -6,9 +6,9 @@
<title>Insert title here</title> <title>Insert title here</title>
<link href="/nlib/css/nlib.css" rel="stylesheet" type="text/css" /> <link href="/css/nlib.css" rel="stylesheet" type="text/css" />
<script src="/nlib/js/jquery/jquery.min.js"></script> <script src="/js/jquery/jquery.min.js"></script>
<script src="/nlib/js/nlib.js"></script> <script src="/js/nlib.js"></script>
</head> </head>

View File

@ -6,7 +6,7 @@
</head> </head>
<body> <body>
<script type="text/javascript"> <script type="text/javascript">
var naver_id_login = new naver_id_login("jIRK8ZmHrZyfm4Qky7pF", "http://www.oauth2test.com/nlib/test/callback.html"); var naver_id_login = new naver_id_login("jIRK8ZmHrZyfm4Qky7pF", "http://www.oauth2test.com/test/callback.html");
// 접근 토큰 값 출력 // 접근 토큰 값 출력
alert(" access_token=" + naver_id_login.oauthParams.access_token); alert(" access_token=" + naver_id_login.oauthParams.access_token);
// 네이버 사용자 프로필 조회 // 네이버 사용자 프로필 조회

View File

@ -11,10 +11,10 @@
<div id="naver_id_login"></div> <div id="naver_id_login"></div>
<!-- //네이버아이디로로그인 버튼 노출 영역 --> <!-- //네이버아이디로로그인 버튼 노출 영역 -->
<script type="text/javascript"> <script type="text/javascript">
var naver_id_login = new naver_id_login("jIRK8ZmHrZyfm4Qky7pF", "http://www.oauth2test.com/nlib/test/callback.html"); var naver_id_login = new naver_id_login("jIRK8ZmHrZyfm4Qky7pF", "http://www.oauth2test.com/test/callback.html");
var state = naver_id_login.getUniqState(); var state = naver_id_login.getUniqState();
naver_id_login.setButton("white", 2,40); naver_id_login.setButton("white", 2,40);
naver_id_login.setDomain("http://www.oauth2test.com/nlib/test/naverLogin.html"); naver_id_login.setDomain("http://www.oauth2test.com/test/naverLogin.html");
naver_id_login.setState(state); naver_id_login.setState(state);
naver_id_login.setPopup(); naver_id_login.setPopup();
naver_id_login.init_naver_id_login(); naver_id_login.init_naver_id_login();