Closed JourPlan closed 9 years ago
js 파일이 정상적으로 로드 되었는지 확인 해 보시는게 좋을거 같네요.
@lhslive 안녕하세요 답변 감사드립니다. 정상적으로 로드되었는지 확인은 어떤식으로하죠??
추가질문남깁니다. bind쪽이 지금 다 안되더라구요.. bindSelector쪽도 콘솔 에러가
SCRIPT438: 개체가 'bindSelector' 속성이나 메서드를 지원하지 않습니다. AC0103S1.do, 줄 366 문자 28
이런식으로 뜨네요.. js문제인건가요?
소스를 전체 긁어서 사용하신거면.. 해당 소스는 서버경로를 사용하므로.. css나 js파일 부분을
<link rel="stylesheet" type="text/css" href="http://cdn.axisj.com/axisj/ui/arongi/AXJ.min.css" />
<script type="text/javascript" src="http://cdn.axisj.com/axisj/jquery/jquery.min.js"></script>
<script type="text/javascript" src="http://cdn.axisj.com/axisj/dist/AXJ.min.js"></script>
이걸로 교체해 보세요.
@lhslive 하.. 답변 감사드립니다. 근데 신기한게 말씀해주신거 넣고 돌리니까 되더라구요. 근데 시간좀 지나니까 희한하게 또 안되네요... 뭘까요;;;
추가 질문입니다. 혹시 이거 순서가 있나요? 제가 AXTree랑 AXGrid랑 지금 다 같이 한화면에 담고 잇는데 var fnObj; <-AXTree 구요. var fnObj2; <-AXGrid 이구요. var fnObj3; <- date 쪽입니다. 이쪽에 bindDate쪽이 있는 부분이구요.
소스는 ->
var myGrid = new AXGrid(); // instance var itemSum = 0; var fnObj; var fnObj2; var fnObj3; var myTree = new AXTree();
fnObj = { pageStart: function(){ ... jQuery(document.body).ready(function() { fnObj.pageStart(); }); fnObj2 = { pageStart2: function(){ ... jQuery(document.body).ready(function() { fnObj2.pageStart2(); });
fnObj3 = { pageStart3: function(){ .... jQuery(document).ready(fnObj3.pageStart3.delay(0.1));
이런식으로 소스를 줬습니다. 이런식으로 주면 문제 있나요?
전체 소스를 올려주세요.
부분만 봐서는 pageStart 안에서 document ready 이벤트를 선언 하는것 같네요. fnObj 의 pageStart 안에서 전부 다 선언 하시고
jQuery(document).ready 에서 fnObj.pageStart.delay(0.1) 를 호출하셔서 확인해 보시는게 좋을 것 같습니다.
@lhslive 안녕하세요 답변 감사드립니다. 말씀하신 전체 소스입니다.
<script type="text/javascript" src="/axisj/jquery/jquery.min.js"></script>
<script type="text/javascript" src="/axisj/dist/AXJ.min.js"></script>
<script type="text/javascript" src="/axisj/lib/AXGrid.js"></script>
<script type="text/javascript" src="/axisj/prettify/prettify.js"></script>
<script type="text/javascript" src="/axisj/prettify/lang-css.js"></script>
<script type="text/javaScript" language="javascript" defer="defer">
var pageID = "Date";
var myGrid = new AXGrid(); // instance
var itemSum = 0;
var fnObj;
var fnObj2;
var fnObj3;
var myTree = new AXTree();
fnObj = {
pageStart: function(){
fnObj.tree1();
},
tree1: function(){
myTree.setConfig({
targetID : "AXTreeTarget",
theme: "AXTree_none",
//height:"auto",
xscroll:false,
showConnectionLine:true,
relation:{
parentKey:"parentcd",
childKey:"nodeID",
parentName:"parentnm",
childName:"nodenm"
},
colGroup: [
{key:"no", label:"번호", width:"100", align:"center", display:false},
{key:"nodenm", label:"제목", width:"100%", align:"left", indent:true,
getIconClass: function(){
//folder, AXfolder, movie, img, zip, file, fileTxt, fileTag
//var iconNames = "company, folder, AXfolder, movie, img, zip, file, fileTxt, fileTag".split(/, /g);
var iconName = "file";
if(this.item.type) iconName = this.item.type;
return iconName;
},
formatter:function(){
//return "<b>"+this.item.no.setDigit(2) + "</b> : " + this.item.nodeName + " (" + this.item.writer + ")";
//return this.item.nodeName;
return (this.item.nodenm||"").dec();
}
},
{key:"writer", label:"작성자", width:"100", align:"center", display:false}
],
body: {
onclick:function(idx, item){
trace(this.item);
//trace(myTree.list);
//toast.push(Object.toJSON(item));
//myTree.setEditor(this.item, this.index);
}
}
});
var Tree = [
{nodeID:"1","nodenm":"자산",open:true, nodeType:"company","parentcd":"","parentnm":"","sortnum":1,"ckd":0,"treeno":"l001", subTree:[
{nodeID:"20130618001","nodenm":"유동자산",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":2,"ckd":0,"treeno":"l001_001", subTree:[
{nodeID:"20130618012","nodenm":"당좌자산",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004",subTree:[
{nodeID:"20130618101","nodenm":"현금",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"당좌예금",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(출연금)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(기타)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(운영비)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
]},
{nodeID:"20130618012","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618012","nodenm":"트리연결하기",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"}
]},
{nodeID:"20130618009","nodenm":"AXISJ.com",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":2,"ckd":0,"treeno":"l001_002"},
{nodeID:"20130618010","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":3,"ckd":0,"treeno":"l001_003", subTree:[
{nodeID:"20130618011","nodenm":"showConnectionLine : true",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004", subTree:[
{nodeID:"20130618013","nodenm":"주의, indentRatio : 1 로 설정해야 제대로 보입니다.",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618014","nodenm":"showConnectionLine : true",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"}
]}
]}
]
}
];
myTree.setTree(Tree);
}
};
jQuery(document.body).ready(function() {
fnObj.pageStart();
});
/////////////////////////////////////////////////////////////
fnObj = {
pageStart: function(){
fnObj.tree1();
},
tree1: function(){
myTree.setConfig({
targetID : "AXTreeTarget",
theme: "AXTree_none",
//height:"auto",
xscroll:false,
showConnectionLine:true,
relation:{
parentKey:"parentcd",
childKey:"nodeID",
parentName:"parentnm",
childName:"nodenm"
},
colGroup: [
{key:"no", label:"번호", width:"100", align:"center", display:false},
{key:"nodenm", label:"제목", width:"100%", align:"left", indent:true,
getIconClass: function(){
//folder, AXfolder, movie, img, zip, file, fileTxt, fileTag
//var iconNames = "company, folder, AXfolder, movie, img, zip, file, fileTxt, fileTag".split(/, /g);
var iconName = "file";
if(this.item.type) iconName = this.item.type;
return iconName;
},
formatter:function(){
//return "<b>"+this.item.no.setDigit(2) + "</b> : " + this.item.nodeName + " (" + this.item.writer + ")";
//return this.item.nodeName;
return (this.item.nodenm||"").dec();
}
},
{key:"writer", label:"작성자", width:"100", align:"center", display:false}
],
body: {
onclick:function(idx, item){
trace(this.item);
//trace(myTree.list);
//toast.push(Object.toJSON(item));
//myTree.setEditor(this.item, this.index);
}
}
});
var Tree = [
{nodeID:"1","nodenm":"자산",open:true, nodeType:"company","parentcd":"","parentnm":"","sortnum":1,"ckd":0,"treeno":"l001", subTree:[
{nodeID:"20130618001","nodenm":"유동자산",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":2,"ckd":0,"treeno":"l001_001", subTree:[
{nodeID:"20130618012","nodenm":"당좌자산",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004",subTree:[
{nodeID:"20130618101","nodenm":"현금",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"당좌예금",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(출연금)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(기타)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(운영비)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
]},
{nodeID:"20130618012","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618012","nodenm":"트리연결하기",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"}
]},
{nodeID:"20130618009","nodenm":"AXISJ.com",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":2,"ckd":0,"treeno":"l001_002"},
{nodeID:"20130618010","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":3,"ckd":0,"treeno":"l001_003", subTree:[
{nodeID:"20130618011","nodenm":"showConnectionLine : true",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004", subTree:[
{nodeID:"20130618013","nodenm":"주의, indentRatio : 1 로 설정해야 제대로 보입니다.",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618014","nodenm":"showConnectionLine : true",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"}
]}
]}
]
}
];
myTree.setTree(Tree);
}
};
jQuery(document.body).ready(function() {
fnObj.pageStart();
});
//////////////////////////////////////////////
fnObj3 = {
pageStart3: function(){
$("#AXInputDate").bindDate({align:"right", valign:"bottom", separator:"/", defaultSelectType:"m", onchange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateMiddle").bindDate({align:"left", valign:"middle", onChange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateMiddle2").bindDate({align:"center", valign:"middle", onChange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateRight").bindDate({align:"right", valign:"top", onChange:function(){
toast.push(Object.toJSON(this));
}, defaultDate:"2013-05-01"});
$("#AXInputDate2").bindDate({separator:"/", selectType:"m"});
$("#AXInputDate3").bindDate({selectType:"y"});
$("#AXInputDate4").bindDateTime({
onChange:function(){
//toast.push(Object.toJSON(this));
}
});
$("#AXInputDateED").bindTwinDate({handleLeft:25, align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateST", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateYED").bindTwinDate({align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateYST", selectType:"y", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateMED").bindTwinDate({align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateMST", selectType:"m", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateTimeED").bindTwinDateTime({align:"right", valign:"top", separator:"/", startTargetID:"AXInputDateTimeST", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDate_earlier").bindDate({align:"right", valign:"bottom", onChange:{
earlierThan:"AXInputDate_later", err:"종료일보다 빠른 날짜를 선택하세요",
onChange:function(){
}
}
});
$("#AXInputDate_later").bindDate({align:"right", valign:"bottom",
onChange:{
laterThan:"AXInputDate_earlier", err:"시작일보다 느린 날짜를 선택하세요"
}
});
},
unbindInput: function () {
$("#AXInputDate").unbindInput();
},
bindInput: function () {
$("#AXInputDate").bindDate({align:"right", valign:"top", separator:"/", onChange:function(){toast.push(Object.toJSON(this));}});
}
};
jQuery(document).ready(fnObj3.pageStart3.delay(0.0));
</script>
이게 스크립트쪽 소스구요.
<input type="text" name="" id="AXInputDate3" class="AXInput W50" />
<div id="AXTreeTarget" style="height:613px; "></div>
<div id="AXGridTarget2" style="height: 613px;"></div>
아래 소스입니다.
되다가 안되면... 아무래도 상단 선언부
<script type="text/javascript" src="/axisj/jquery/jquery.min.js"></script>
<script type="text/javascript" src="/axisj/dist/AXJ.min.js"></script>
<script type="text/javascript" src="/axisj/lib/AXGrid.js"></script>
<script type="text/javascript" src="/axisj/prettify/prettify.js"></script>
<script type="text/javascript" src="/axisj/prettify/lang-css.js"></script>
이부분에서 경로가 맞지 않는것 같은데요??
예전글에서 CDN으로 임포트 하면 된다고 하셨던것 같은데...
자바스크립트가 충돌나는거같긴한데 순서가 잘못된건가요?? 말씀하신 CDN은 어떤걸 말씀하시는거죠?;
''' var myGrid = new AXGrid(); // instance var itemSum = 0; var fnObj; var fnObj2; var fnObj3; var myTree = new AXTree(); ''' fnObj 를 두번쓰시네요...
현재 순서로만 보면 fnObj; fnObj; fnObj3 이렇게 되어있습니다만... 일부로 이렇게 하신건가요?
아 제가 소스 옮겨서 적는과정에서 잘못된거같습니다. 실제 소스에서는 fnObj,fnObj2, fnObj3제대로 적었습니다.
그냥 페이지 전체 소스올려주심이 좋을듯 싶어요..
<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ page import="java.util.*" %>
<%
/**
* @Class Name : egovSampleList.jsp
* @Description : Sample List 화면
* @Modification Information
*
* 수정일 수정자 수정내용
* ------- -------- ---------------------------
* 2009.02.01 최초 생성
*
* author 실행환경 개발팀
* since 2009.02.01
*
* Copyright (C) 2009 by MOPAS All right reserved.
*/
%>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1.0, minimum-scale=1" />
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>기본게시판</title>
<link type="text/css" rel="stylesheet" href="<c:url value='/css/solarerp/layout.css'/>"/>
<meta property="og:image" content="/samples/_img/axisj_sns.png" />
<meta property="og:site_name" content="Axis of Javascript - axisj.com" />
<meta property="og:description" id="meta_description" content="Javascript UI Library based on JQuery" />
<link rel="shortcut icon" href="/axisj/ui/axisj.ico" type="image/x-icon" />
<link rel="icon" href="/axisj/ui/axisj.ico" type="image/x-icon" />
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="/axisj/ui/AXJ.png" />
<link rel="apple-touch-icon-precomposed" href="/axisj/ui/AXJ.png" />
<!-- 공통요소 -->
<link rel="stylesheet" type="text/css" href="/axisj/ui/arongi/AXJ.css" />
<link href="//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="/axisj/ui/arongi/AXJ.min.css" />
<link rel="stylesheet" type="text/css" href="/axisj/ui/arongi/page.css">
<link rel="stylesheet" type="text/css" href="/axisj/ui/arongi/AXGrid.css" />
<link rel="stylesheet" type="text/css" href="/axisj/ui/arongi/AXInput.css" />
<link rel="stylesheet" type="text/css" href="/axisj/ui/arongi/AXSelect.css" />
<link rel="stylesheet" type="text/css" href="/axisj/ui/arongi/AXGrid.css" />
<link type="text/css" rel="stylesheet" href="/axisj/ui/arongi/prettify-jsdoc.css">
<!-- 추가하는 UI 요소 -->
<script type="text/javascript" src="/axisj/jquery/jquery.min.js"></script>
<script type="text/javascript" src="/axisj/dist/AXJ.min.js"></script>
<script type="text/javascript" src="/axisj/prettify/prettify.js"></script>
<script type="text/javascript" src="/axisj/prettify/lang-css.js"></script>
<!-- 메뉴 js -->
<script type="text/javaScript" language="javascript" defer="defer">
var pageID = "Date";
var myGrid = new AXGrid(); // instance
var itemSum = 0;
var fnObj;
var fnObj2;
var fnObj3;
var myTree = new AXTree();
jQuery(document.body).ready(function() {
fn3();
fn1();
fn2();
});
function fn1(){
fnObj = {
pageStart: function(){
fnObj.tree1();
},
tree1: function(){
myTree.setConfig({
targetID : "AXTreeTarget",
theme: "AXTree_none",
//height:"auto",
xscroll:false,
showConnectionLine:true,
relation:{
parentKey:"parentcd",
childKey:"nodeID",
parentName:"parentnm",
childName:"nodenm"
},
colGroup: [
{key:"no", label:"번호", width:"100", align:"center", display:false},
{key:"nodenm", label:"제목", width:"100%", align:"left", indent:true,
getIconClass: function(){
//folder, AXfolder, movie, img, zip, file, fileTxt, fileTag
//var iconNames = "company, folder, AXfolder, movie, img, zip, file, fileTxt, fileTag".split(/, /g);
var iconName = "file";
if(this.item.type) iconName = this.item.type;
return iconName;
},
formatter:function(){
//return "<b>"+this.item.no.setDigit(2) + "</b> : " + this.item.nodeName + " (" + this.item.writer + ")";
//return this.item.nodeName;
return (this.item.nodenm||"").dec();
}
},
{key:"writer", label:"작성자", width:"100", align:"center", display:false}
],
body: {
onclick:function(idx, item){
trace(this.item);
//trace(myTree.list);
//toast.push(Object.toJSON(item));
//myTree.setEditor(this.item, this.index);
}
}
});
var Tree = [
{nodeID:"1","nodenm":"자산",open:true, nodeType:"company","parentcd":"","parentnm":"","sortnum":1,"ckd":0,"treeno":"l001", subTree:[
{nodeID:"20130618001","nodenm":"유동자산",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":2,"ckd":0,"treeno":"l001_001", subTree:[
{nodeID:"20130618012","nodenm":"당좌자산",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004",subTree:[
{nodeID:"20130618101","nodenm":"현금",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"당좌예금",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(출연금)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(기타)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(운영비)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
]},
{nodeID:"20130618012","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618012","nodenm":"트리연결하기",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"}
]},
{nodeID:"20130618009","nodenm":"AXISJ.com",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":2,"ckd":0,"treeno":"l001_002"},
{nodeID:"20130618010","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":3,"ckd":0,"treeno":"l001_003", subTree:[
{nodeID:"20130618011","nodenm":"showConnectionLine : true",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004", subTree:[
{nodeID:"20130618013","nodenm":"주의, indentRatio : 1 로 설정해야 제대로 보입니다.",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618014","nodenm":"showConnectionLine : true",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"}
]}
]}
]
}
];
myTree.setTree(Tree);
}
};
jQuery(document.body).ready(function() {
fnObj.pageStart();
});
}
function fn2(){
fnObj2 = {
pageStart2: function(){
fnObj2.grid.bind();
prettyPrint();
},
appendGrid2: function(index){
var item = {};
if(index){
myGrid2.appendList(item, index);
}else{
myGrid2.appendList(item);
}
},
//삭제 부분
removeGrid2: function(){
var index = fnObj2.grid.getSelectedItem().index;
var item = fnObj2.grid.getSelectedItem().item;
if(index != null && index != undefined){
if(fnObj2.grid.getSelectedItem().item.length == undefined){
var itemList = [];
var row = index*1;
itemList.push( myGrid2.list[index*1] );
}else{
var itemList = [];
var len = fnObj2.grid.getSelectedItem().index.length;
for(var i=0;i<len;i++){
var row = index[i]*1;
itemList.push( myGrid2.list[row] );
}
}
// $.ajax({
// type: "POST",
// url: "<c:url value='/com/code/deleteRowCode.do'/>",
// data: { "itemList": JSON.stringify(itemList),"largecode":$("#largecode_").val(), "midgcode":$("#midgcode_").val(), "subsyscode":subsyscode },
// contentType: "application/x-www-form-urlencoded; charset=utf-8",
// dataType: "json",
// success: function(data) {
// alert(data.result +"건 삭제 완료되었습니다.");
// groupDB();
// },
// error: function(result) {
// alert("error from delete");
// alert(result.status + " : " + result.description);
// }
// });
}else{
alert("행을 선택 하지 않으셨습니다.");
}
},
grid: {
target: new AXGrid(),
bind: function(){
window.myGrid2 = fnObj2.grid.target;
myGrid2.setConfig({
targetID : "AXGridTarget2",
sort:false,
//fitToWidth:true, // 너비에 자동 맞춤
/*
todo : editor type options [text, number, money, calendar, select, selector, switch, segment, slider, finder]
*/
colGroup : [
{
key:"no", label:"수준", width:"50", align:"center"
},
{
key:"status", label:"계정과목", width:"40", align:"center", formatter:function(){
if(this.item._CUD == "C"){
return "신규";
}else if(this.item._CUD == "D"){
return "삭제";
}else if(this.item._CUD == "U"){
return "수정";
}
},
editor:{
type:"text"
}
},
{
key:"cd", label:"상위코드", width:"50", align:"center",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"cdName", label:"구분", width:"200",
tooltip:function(){
return this.item.no + "." + this.item.title + "/" + this.key + "/" + this.value;
},
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"seq", label:"차대", width:"100", align:"center"
},
{
key:"useYn", label:"보조유형", width:"105", align:"center",
editor: {
type: "checkbox"
}
},
{
key:"choos1", label:"관리유형", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"choos2", label:"계정유형", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"choos3", label:"선택값3", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"choos4", label:"선택값4", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"choos5", label:"선택값5", width:"100", align:"right",
editor: {
type: "text"
}
},
{
key:"note1", label:"수치선택값1", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"note2", label:"수치선택값2", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"note3", label:"수치선택값3", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"note4", label:"수치선택값4", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"note5", label:"수치선택값5", width:"100", align:"right",
editor: {
type: "text"
}
},
{
key:"fullname", label:"코드전체명칭", width:"200",
tooltip:function(){
return this.item.no + "." + this.item.title + "/" + this.key + "/" + this.value;
},
editor: {
type: "text",
updateWith: ["status"]
},
},
{
key:"shortname", label:"코드약어명", width:"200",
tooltip:function(){
return this.item.no + "." + this.item.title + "/" + this.key + "/" + this.value;
},
editor: {
type: "text",
updateWith: ["status"]
}
}
],
colHeadAlign: "center", // 헤드의 기본 정렬 값 ( colHeadAlign 을 지정하면 colGroup 에서 정의한 정렬이 무시되고 colHeadAlign : false 이거나 없으면 colGroup 에서 정의한 속성이 적용됩니다.
body : {
onclick: function(){
//trace(this.index);
}
},
page: {
paging: false
},
editor: {
rows: [
[
{
colSeq:0, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"number", config:{min:1, max:100}} //No
},
{
colSeq:1, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //코드
},
{
colSeq:2, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} // 코드명칭
},
{
colSeq:3, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"number", config:{min:1, max:100}} //순번
},
{
colSeq:4, align:"center", valign:"middle", form:{type:"checkbox", value:"itemValue", options:[{value:true, text:''}]} //사용여부
},
{
colSeq:5, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값1
},
{
colSeq:6, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값2
},
{
colSeq:7, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값3
},
{
colSeq:8, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값4
},
{
colSeq:9, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값5
},
{
colSeq:10, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값1
},
{
colSeq:11, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값2
},
{
colSeq:12, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값3
},
{
colSeq:13, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값4
},
{
colSeq:14, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값5
},
{
colSeq:15, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} // 코드전체명칭
},
{
colSeq:16, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} // 코드약어명
}
]
],
//request:{ajaxUrl:"saveGrid.php", ajaxPars:"param1=1¶m2=2"},
response: function(){ // ajax 응답에 대해 예외 처리 필요시 response 구현
// response에서 처리 할 수 있는 객체 들
//trace({res:this.res, index:this.index, insertIndex:this.insertIndex, list:this.list, page:this.page});
if(this.error){
trace(this);
return;
}
trace(this.res.item);
if(this.index == null){ // 추가
var pushItem = this.res.item;
//pushItem 에 추가 값 지정 가능
if(this.res.item.title == ""){
alert("제목이 비어 추가 할 수 없습니다.");
return false;
}
insertDetailCode(this.res.item, $("#largecode_").val(), $("#midgcode_").val(),subsyscode);
trace(pushItem, this.insertIndex);
myGrid2.pushList(pushItem, this.insertIndex);
}else{ // 수정
//trace(this.res.item);
AXUtil.overwriteObject(this.list[this.index], this.res.item, true); // this.list[this.index] object 에 this.res.item 값 덮어쓰기
myGrid2.updateList(this.index, this.list[this.index]);
}
},
onkeyup: function(event, element){
if(event.keyCode == 13 && element.name != "title") myGrid.saveEditor();
else if(event.keyCode == 13 && element.name == "title") myGrid.focusEditorForm("regDate");
}
},
contextMenu: {
theme:"AXContextMenu", // 선택항목
width:"150", // 선택항목
menu:[
{
userType:1, label:"추가하기", className:"plus", onclick:function(){
myGrid2.appendList(null);
//myGrid.appendList(item, index);
/*
var removeList = [];
removeList.push({no:this.sendObj.item.no});
myGrid.removeList(removeList); // 전달한 개체와 비교하여 일치하는 대상을 제거 합니다. 이때 고유한 값이 아닌 항목을 전달 할 때에는 에러가 발생 할 수 있습니다.
*/
}
},
{
userType:1, label:"삭제하기", className:"minus", onclick:function(){
if(this.sendObj){
if(!confirm("정말 삭제 하시겠습니까?")) return;
var removeList = [];
removeList.push({no:this.sendObj.item.no});
myGrid2.removeList(removeList); // 전달한 개체와 비교하여 일치하는 대상을 제거 합니다. 이때 고유한 값이 아닌 항목을 전달 할 때에는 에러가 발생 할 수 있습니다.
}
}
},
{
userType:1, label:"수정하기", className:"edit", onclick:function(){
//trace(this);
if(this.sendObj){
myGrid2.setEditor(this.sendObj.item, this.sendObj.index);
}
}
}
],
filter:function(id){
return true;
}
}
});
var list2 = [];
// for(var i=0; i<data.detailList.length; i++) {
// var seq;
// if(data.detailList[i].sortseq == 0){
// seq == "";
// }else{
// seq = data.detailList[i].sortseq;
// }
// var obj={};
// obj.no = i+1,
// obj.cd = data.detailList[i].smallgcode,
// obj.cdName = data.detailList[i].codename,
// obj.seq = seq,
// obj.useYn = data.detailList[i].useyn * 1,
// obj.choos1 = data.detailList[i].optvalue1,
// obj.choos2 = data.detailList[i].optvalue2,
// obj.choos3 = data.detailList[i].optvalue3,
// obj.choos4 = data.detailList[i].optvalue4,
// obj.choos5 = data.detailList[i].optvalue5,
// obj.note1 = data.detailList[i].noptvalue1,
// obj.note2 = data.detailList[i].noptvalue2,
// obj.note3 = data.detailList[i].noptvalue3,
// obj.note4 = data.detailList[i].noptvalue4,
// obj.note5 = data.detailList[i].noptvalue5,
// obj.fullCdName = data.detailList[i].fullname,
// obj.shortCdName = data.detailList[i].shortname
// list2.push(obj);
// if(i == 0){
// $("#largecode_").val(data.detailList[i].largecode);
// $("#midgcode_").val(data.detailList[i].midgcode);
// }
// }
myGrid2.setList(list2);
//trace(myGrid.getSortParam());
},
getExcel: function(type){
var obj = myGrid2.getExcelFormat(type);
trace(obj);
$("#printout").html(Object.toJSON(obj));
},
getSelectedItem: function(){
trace( this.target.getSelectedItem() );
return this.target.getSelectedItem();
}
}
};
jQuery(document.body).ready(function() {
fnObj2.pageStart2();
});
}
function fn3(){
fnObj3 = {
pageStart3: function(){
$("#AXInputDate").bindDate({align:"right", valign:"bottom", separator:"/", defaultSelectType:"m", onchange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateMiddle").bindDate({align:"left", valign:"middle", onChange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateMiddle2").bindDate({align:"center", valign:"middle", onChange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateRight").bindDate({align:"right", valign:"top", onChange:function(){
toast.push(Object.toJSON(this));
}, defaultDate:"2013-05-01"});
$("#AXInputDate2").bindDate({separator:"/", selectType:"m"});
$("#AXInputDate3").bindDate({selectType:"y"});
$("#AXInputDate4").bindDateTime({
onChange:function(){
//toast.push(Object.toJSON(this));
}
});
$("#AXInputDateED").bindTwinDate({handleLeft:25, align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateST", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateYED").bindTwinDate({align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateYST", selectType:"y", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateMED").bindTwinDate({align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateMST", selectType:"m", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateTimeED").bindTwinDateTime({align:"right", valign:"top", separator:"/", startTargetID:"AXInputDateTimeST", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDate_earlier").bindDate({align:"right", valign:"bottom", onChange:{
earlierThan:"AXInputDate_later", err:"종료일보다 빠른 날짜를 선택하세요",
onChange:function(){
}
}
});
$("#AXInputDate_later").bindDate({align:"right", valign:"bottom",
onChange:{
laterThan:"AXInputDate_earlier", err:"시작일보다 느린 날짜를 선택하세요"
}
});
},
unbindInput: function () {
$("#AXInputDate").unbindInput();
},
bindInput: function () {
$("#AXInputDate").bindDate({align:"right", valign:"top", separator:"/", onChange:function(){toast.push(Object.toJSON(this));}});
}
};
jQuery(document).ready(fnObj3.pageStart3.delay(0.0));
}
</script>
</head>
<body style="text-align:center; margin:0 auto; display:inline; padding-top:100px;" onsubmit="return false;">
<!-- 메뉴 start -->
<header id="header">
<jsp:include page="../../layout/header.jsp"/>
</header>
<!-- 본문 start -->
<section id = "content">
<div class = "content-warp">
<form:form commandName="searchVO" id="listForm" name="listForm" method="post">
<input type="hidden" name="selectedId" />
<input type="hidden" name="searchCondition" />
<input type="hidden" name="largecode" id="largecode" />
<input type="hidden" name="midgcode" id="midgcode" />
<input type="hidden" name="userYn" id="useYn" />
<div class = "content-top">
<div>
<label>회계년도</label>
<input type="text" name="" id="AXInputDate3" class="AXInput W50" />
<label>계정과목</label>
<input type="text" name="searchKeyword" style="ime-mode:inactive;" size=50 value="" class="AXInput" onkeydown="javascript:if(event.keyCode==13){groupDB();}"/>
<label>사용여부</label>
<label>
<input type="radio" name="mycheck3" value="3" />
전체
</label>
<label>
<input type="radio" name="mycheck3" value="2" />
Y
</label>
<label>
<input type="radio" name="mycheck3" value="1" />
N
</label>
<button type="button" style = "float: right;margin-right:20px;" class="AXButton Classic" onclick="groupDB()" >
<i class="fa fa-search fa-lg"></i>
Search
</button>
</div>
</div>
<div class = "content-left">
<div>
* 회계계정코드
</div>
<div id="AXTreeTarget" style="height:613px; "></div>
</div>
</form:form>
<form:form commandName="searchVO2" id="listForm_" name="listForm_" method="post">
<input type="hidden" name="largecode_" id="largecode_" />
<input type="hidden" name="midgcode_" id="midgcode_" />
<div class = "content-right">
<div>
<input type="button" style = "float: right;" value="(-) 행삭제" class="AXButtonSmall" onclick="fnObj2.removeGrid2();" />
<input type="button" style = "float: right;" value="(+) 행추가" class="AXButtonSmall" onclick="fnObj2.appendGrid2();" />
</div>
<div id="AXGridTarget2" style="height: 613px;"></div>
</div>
<div class = "content-bottom">
<button type="button" style = "float: right;margin-right:10px;margin-top: 7px;" class="AXButton Red" onclick="fnObj.saveCommon();" >
<i class="fa fa-hand-o-up fa-lg"></i> 저장하기
</button>
<button type="button" style = "float: right;margin-right:10px;margin-top: 7px;" class="AXButton Red" onclick="groupDB()" >
<i class="fa fa-arrow-circle-o-down fa-lg"></i> Excel-Down
</button>
</div>
</form:form>
</div>
</section>
<!-- footer start -->
<footer id = "footer">
<jsp:include page="../../layout/footer.jsp"/>
</footer>
</body>
</html>
전체소스입니다. 뭐가문제인지 ㅠㅠ
<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ page import="java.util.*" %>
<%
/**
* @Class Name : egovSampleList.jsp
* @Description : Sample List 화면
* @Modification Information
*
* 수정일 수정자 수정내용
* ------- -------- ---------------------------
* 2009.02.01 최초 생성
*
* author 실행환경 개발팀
* since 2009.02.01
*
* Copyright (C) 2009 by MOPAS All right reserved.
*/
%>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1.0, minimum-scale=1" />
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>기본게시판</title>
<link type="text/css" rel="stylesheet" href="<c:url value='/css/solarerp/layout.css'/>"/>
<meta property="og:image" content="/samples/_img/axisj_sns.png" />
<meta property="og:site_name" content="Axis of Javascript - axisj.com" />
<meta property="og:description" id="meta_description" content="Javascript UI Library based on JQuery" />
<link rel="shortcut icon" href="/axisj/ui/axisj.ico" type="image/x-icon" />
<link rel="icon" href="/axisj/ui/axisj.ico" type="image/x-icon" />
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="/axisj/ui/AXJ.png" />
<link rel="apple-touch-icon-precomposed" href="/axisj/ui/AXJ.png" />
<link rel="stylesheet" type="text/css" href="http://cdn.axisj.com/axisj/ui/arongi/AXJ.min.css" />
<script type="text/javascript" src="http://cdn.axisj.com/axisj/jquery/jquery.min.js"></script>
<script type="text/javascript" src="http://cdn.axisj.com/axisj/dist/AXJ.min.js"></script>
<script type="text/javascript" src="/axisj/prettify/prettify.js"></script>
<script type="text/javascript" src="/axisj/prettify/lang-css.js"></script>
<!-- 메뉴 js -->
<script type="text/javaScript" language="javascript" defer="defer">
var pageID = "Date";
var myGrid = new AXGrid(); // instance
var itemSum = 0;
var fnObj;
var fnObj2;
var fnObj3;
var myTree = new AXTree();
jQuery(document.body).ready(function() {
fn3();
fn1();
fn2();
});
function fn1(){
fnObj = {
pageStart: function(){
fnObj.tree1();
},
tree1: function(){
myTree.setConfig({
targetID : "AXTreeTarget",
theme: "AXTree_none",
//height:"auto",
xscroll:false,
showConnectionLine:true,
relation:{
parentKey:"parentcd",
childKey:"nodeID",
parentName:"parentnm",
childName:"nodenm"
},
colGroup: [
{key:"no", label:"번호", width:"100", align:"center", display:false},
{key:"nodenm", label:"제목", width:"100%", align:"left", indent:true,
getIconClass: function(){
//folder, AXfolder, movie, img, zip, file, fileTxt, fileTag
//var iconNames = "company, folder, AXfolder, movie, img, zip, file, fileTxt, fileTag".split(/, /g);
var iconName = "file";
if(this.item.type) iconName = this.item.type;
return iconName;
},
formatter:function(){
//return "<b>"+this.item.no.setDigit(2) + "</b> : " + this.item.nodeName + " (" + this.item.writer + ")";
//return this.item.nodeName;
return (this.item.nodenm||"").dec();
}
},
{key:"writer", label:"작성자", width:"100", align:"center", display:false}
],
body: {
onclick:function(idx, item){
trace(this.item);
//trace(myTree.list);
//toast.push(Object.toJSON(item));
//myTree.setEditor(this.item, this.index);
}
}
});
var Tree = [
{nodeID:"1","nodenm":"자산",open:true, nodeType:"company","parentcd":"","parentnm":"","sortnum":1,"ckd":0,"treeno":"l001", subTree:[
{nodeID:"20130618001","nodenm":"유동자산",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":2,"ckd":0,"treeno":"l001_001", subTree:[
{nodeID:"20130618012","nodenm":"당좌자산",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004",subTree:[
{nodeID:"20130618101","nodenm":"현금",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"당좌예금",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(출연금)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(기타)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"보통예금(운영비)",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618101","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
]},
{nodeID:"20130618012","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618012","nodenm":"트리연결하기",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"}
]},
{nodeID:"20130618009","nodenm":"AXISJ.com",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":2,"ckd":0,"treeno":"l001_002"},
{nodeID:"20130618010","nodenm":"AXTree",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":3,"ckd":0,"treeno":"l001_003", subTree:[
{nodeID:"20130618011","nodenm":"showConnectionLine : true",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004", subTree:[
{nodeID:"20130618013","nodenm":"주의, indentRatio : 1 로 설정해야 제대로 보입니다.",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"},
{nodeID:"20130618014","nodenm":"showConnectionLine : true",open:true,nodeType:"folder","parentcd":"1","parentnm":"ETRI","sortnum":4,"ckd":0,"treeno":"l001_004"}
]}
]}
]
}
];
myTree.setTree(Tree);
}
};
jQuery(document.body).ready(function() {
fnObj.pageStart();
});
}
function fn2(){
fnObj2 = {
pageStart2: function(){
fnObj2.grid.bind();
prettyPrint();
},
appendGrid2: function(index){
var item = {};
if(index){
myGrid2.appendList(item, index);
}else{
myGrid2.appendList(item);
}
},
//삭제 부분
removeGrid2: function(){
var index = fnObj2.grid.getSelectedItem().index;
var item = fnObj2.grid.getSelectedItem().item;
if(index != null && index != undefined){
if(fnObj2.grid.getSelectedItem().item.length == undefined){
var itemList = [];
var row = index*1;
itemList.push( myGrid2.list[index*1] );
}else{
var itemList = [];
var len = fnObj2.grid.getSelectedItem().index.length;
for(var i=0;i<len;i++){
var row = index[i]*1;
itemList.push( myGrid2.list[row] );
}
}
// $.ajax({
// type: "POST",
// url: "<c:url value='/com/code/deleteRowCode.do'/>",
// data: { "itemList": JSON.stringify(itemList),"largecode":$("#largecode_").val(), "midgcode":$("#midgcode_").val(), "subsyscode":subsyscode },
// contentType: "application/x-www-form-urlencoded; charset=utf-8",
// dataType: "json",
// success: function(data) {
// alert(data.result +"건 삭제 완료되었습니다.");
// groupDB();
// },
// error: function(result) {
// alert("error from delete");
// alert(result.status + " : " + result.description);
// }
// });
}else{
alert("행을 선택 하지 않으셨습니다.");
}
},
grid: {
target: new AXGrid(),
bind: function(){
window.myGrid2 = fnObj2.grid.target;
myGrid2.setConfig({
targetID : "AXGridTarget2",
sort:false,
//fitToWidth:true, // 너비에 자동 맞춤
/*
todo : editor type options [text, number, money, calendar, select, selector, switch, segment, slider, finder]
*/
colGroup : [
{
key:"no", label:"수준", width:"50", align:"center"
},
{
key:"status", label:"계정과목", width:"40", align:"center", formatter:function(){
if(this.item._CUD == "C"){
return "신규";
}else if(this.item._CUD == "D"){
return "삭제";
}else if(this.item._CUD == "U"){
return "수정";
}
},
editor:{
type:"text"
}
},
{
key:"cd", label:"상위코드", width:"50", align:"center",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"cdName", label:"구분", width:"200",
tooltip:function(){
return this.item.no + "." + this.item.title + "/" + this.key + "/" + this.value;
},
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"seq", label:"차대", width:"100", align:"center"
},
{
key:"useYn", label:"보조유형", width:"105", align:"center",
editor: {
type: "checkbox"
}
},
{
key:"choos1", label:"관리유형", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"choos2", label:"계정유형", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"choos3", label:"선택값3", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"choos4", label:"선택값4", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"choos5", label:"선택값5", width:"100", align:"right",
editor: {
type: "text"
}
},
{
key:"note1", label:"수치선택값1", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"note2", label:"수치선택값2", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"note3", label:"수치선택값3", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"note4", label:"수치선택값4", width:"100", align:"right",
editor: {
type: "text",
updateWith: ["status"]
}
},
{
key:"note5", label:"수치선택값5", width:"100", align:"right",
editor: {
type: "text"
}
},
{
key:"fullname", label:"코드전체명칭", width:"200",
tooltip:function(){
return this.item.no + "." + this.item.title + "/" + this.key + "/" + this.value;
},
editor: {
type: "text",
updateWith: ["status"]
},
},
{
key:"shortname", label:"코드약어명", width:"200",
tooltip:function(){
return this.item.no + "." + this.item.title + "/" + this.key + "/" + this.value;
},
editor: {
type: "text",
updateWith: ["status"]
}
}
],
colHeadAlign: "center", // 헤드의 기본 정렬 값 ( colHeadAlign 을 지정하면 colGroup 에서 정의한 정렬이 무시되고 colHeadAlign : false 이거나 없으면 colGroup 에서 정의한 속성이 적용됩니다.
body : {
onclick: function(){
//trace(this.index);
}
},
page: {
paging: false
},
editor: {
rows: [
[
{
colSeq:0, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"number", config:{min:1, max:100}} //No
},
{
colSeq:1, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //코드
},
{
colSeq:2, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} // 코드명칭
},
{
colSeq:3, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"number", config:{min:1, max:100}} //순번
},
{
colSeq:4, align:"center", valign:"middle", form:{type:"checkbox", value:"itemValue", options:[{value:true, text:''}]} //사용여부
},
{
colSeq:5, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값1
},
{
colSeq:6, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값2
},
{
colSeq:7, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값3
},
{
colSeq:8, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값4
},
{
colSeq:9, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //선택값5
},
{
colSeq:10, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값1
},
{
colSeq:11, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값2
},
{
colSeq:12, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값3
},
{
colSeq:13, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값4
},
{
colSeq:14, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} //수치선택값5
},
{
colSeq:15, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} // 코드전체명칭
},
{
colSeq:16, align:"left", valign:"middle", form:{type:"text", value:"itemValue"}, AXBind:{type:"text"} // 코드약어명
}
]
],
//request:{ajaxUrl:"saveGrid.php", ajaxPars:"param1=1¶m2=2"},
response: function(){ // ajax 응답에 대해 예외 처리 필요시 response 구현
// response에서 처리 할 수 있는 객체 들
//trace({res:this.res, index:this.index, insertIndex:this.insertIndex, list:this.list, page:this.page});
if(this.error){
trace(this);
return;
}
trace(this.res.item);
if(this.index == null){ // 추가
var pushItem = this.res.item;
//pushItem 에 추가 값 지정 가능
if(this.res.item.title == ""){
alert("제목이 비어 추가 할 수 없습니다.");
return false;
}
insertDetailCode(this.res.item, $("#largecode_").val(), $("#midgcode_").val(),subsyscode);
trace(pushItem, this.insertIndex);
myGrid2.pushList(pushItem, this.insertIndex);
}else{ // 수정
//trace(this.res.item);
AXUtil.overwriteObject(this.list[this.index], this.res.item, true); // this.list[this.index] object 에 this.res.item 값 덮어쓰기
myGrid2.updateList(this.index, this.list[this.index]);
}
},
onkeyup: function(event, element){
if(event.keyCode == 13 && element.name != "title") myGrid.saveEditor();
else if(event.keyCode == 13 && element.name == "title") myGrid.focusEditorForm("regDate");
}
},
contextMenu: {
theme:"AXContextMenu", // 선택항목
width:"150", // 선택항목
menu:[
{
userType:1, label:"추가하기", className:"plus", onclick:function(){
myGrid2.appendList(null);
//myGrid.appendList(item, index);
/*
var removeList = [];
removeList.push({no:this.sendObj.item.no});
myGrid.removeList(removeList); // 전달한 개체와 비교하여 일치하는 대상을 제거 합니다. 이때 고유한 값이 아닌 항목을 전달 할 때에는 에러가 발생 할 수 있습니다.
*/
}
},
{
userType:1, label:"삭제하기", className:"minus", onclick:function(){
if(this.sendObj){
if(!confirm("정말 삭제 하시겠습니까?")) return;
var removeList = [];
removeList.push({no:this.sendObj.item.no});
myGrid2.removeList(removeList); // 전달한 개체와 비교하여 일치하는 대상을 제거 합니다. 이때 고유한 값이 아닌 항목을 전달 할 때에는 에러가 발생 할 수 있습니다.
}
}
},
{
userType:1, label:"수정하기", className:"edit", onclick:function(){
//trace(this);
if(this.sendObj){
myGrid2.setEditor(this.sendObj.item, this.sendObj.index);
}
}
}
],
filter:function(id){
return true;
}
}
});
var list2 = [];
// for(var i=0; i<data.detailList.length; i++) {
// var seq;
// if(data.detailList[i].sortseq == 0){
// seq == "";
// }else{
// seq = data.detailList[i].sortseq;
// }
// var obj={};
// obj.no = i+1,
// obj.cd = data.detailList[i].smallgcode,
// obj.cdName = data.detailList[i].codename,
// obj.seq = seq,
// obj.useYn = data.detailList[i].useyn * 1,
// obj.choos1 = data.detailList[i].optvalue1,
// obj.choos2 = data.detailList[i].optvalue2,
// obj.choos3 = data.detailList[i].optvalue3,
// obj.choos4 = data.detailList[i].optvalue4,
// obj.choos5 = data.detailList[i].optvalue5,
// obj.note1 = data.detailList[i].noptvalue1,
// obj.note2 = data.detailList[i].noptvalue2,
// obj.note3 = data.detailList[i].noptvalue3,
// obj.note4 = data.detailList[i].noptvalue4,
// obj.note5 = data.detailList[i].noptvalue5,
// obj.fullCdName = data.detailList[i].fullname,
// obj.shortCdName = data.detailList[i].shortname
// list2.push(obj);
// if(i == 0){
// $("#largecode_").val(data.detailList[i].largecode);
// $("#midgcode_").val(data.detailList[i].midgcode);
// }
// }
myGrid2.setList(list2);
//trace(myGrid.getSortParam());
},
getExcel: function(type){
var obj = myGrid2.getExcelFormat(type);
trace(obj);
$("#printout").html(Object.toJSON(obj));
},
getSelectedItem: function(){
trace( this.target.getSelectedItem() );
return this.target.getSelectedItem();
}
}
};
jQuery(document.body).ready(function() {
fnObj2.pageStart2();
});
}
function fn3(){
fnObj3 = {
pageStart3: function(){
$("#AXInputDate").bindDate({align:"right", valign:"bottom", separator:"/", defaultSelectType:"m", onchange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateMiddle").bindDate({align:"left", valign:"middle", onChange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateMiddle2").bindDate({align:"center", valign:"middle", onChange:function(){
toast.push(Object.toJSON(this));
}});
$("#AXInputDateRight").bindDate({align:"right", valign:"top", onChange:function(){
toast.push(Object.toJSON(this));
}, defaultDate:"2013-05-01"});
$("#AXInputDate2").bindDate({separator:"/", selectType:"m"});
$("#AXInputDate3").bindDate({selectType:"y"});
$("#AXInputDate4").bindDateTime({
onChange:function(){
//toast.push(Object.toJSON(this));
}
});
$("#AXInputDateED").bindTwinDate({handleLeft:25, align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateST", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateYED").bindTwinDate({align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateYST", selectType:"y", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateMED").bindTwinDate({align:"right", valign:"bottom", separator:"/", startTargetID:"AXInputDateMST", selectType:"m", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDateTimeED").bindTwinDateTime({align:"right", valign:"top", separator:"/", startTargetID:"AXInputDateTimeST", onChange:function(){
//toast.push(Object.toJSON(this));
}});
$("#AXInputDate_earlier").bindDate({align:"right", valign:"bottom", onChange:{
earlierThan:"AXInputDate_later", err:"종료일보다 빠른 날짜를 선택하세요",
onChange:function(){
}
}
});
$("#AXInputDate_later").bindDate({align:"right", valign:"bottom",
onChange:{
laterThan:"AXInputDate_earlier", err:"시작일보다 느린 날짜를 선택하세요"
}
});
},
unbindInput: function () {
$("#AXInputDate").unbindInput();
},
bindInput: function () {
$("#AXInputDate").bindDate({align:"right", valign:"top", separator:"/", onChange:function(){toast.push(Object.toJSON(this));}});
}
};
jQuery(document).ready(fnObj3.pageStart3.delay(0.0));
}
</script>
</head>
<body style="text-align:center; margin:0 auto; display:inline; padding-top:100px;" onsubmit="return false;">
<!-- 메뉴 start -->
<header id="header">
<jsp:include page="../../layout/header.jsp"/>
</header>
<!-- 본문 start -->
<section id = "content">
<div class = "content-warp">
<form:form commandName="searchVO" id="listForm" name="listForm" method="post">
<input type="hidden" name="selectedId" />
<input type="hidden" name="searchCondition" />
<input type="hidden" name="largecode" id="largecode" />
<input type="hidden" name="midgcode" id="midgcode" />
<input type="hidden" name="userYn" id="useYn" />
<div class = "content-top">
<div>
<label>회계년도</label>
<input type="text" name="" id="AXInputDate3" class="AXInput W50" />
<label>계정과목</label>
<input type="text" name="searchKeyword" style="ime-mode:inactive;" size=50 value="" class="AXInput" onkeydown="javascript:if(event.keyCode==13){groupDB();}"/>
<label>사용여부</label>
<label>
<input type="radio" name="mycheck3" value="3" />
전체
</label>
<label>
<input type="radio" name="mycheck3" value="2" />
Y
</label>
<label>
<input type="radio" name="mycheck3" value="1" />
N
</label>
<button type="button" style = "float: right;margin-right:20px;" class="AXButton Classic" onclick="groupDB()" >
<i class="fa fa-search fa-lg"></i>
Search
</button>
</div>
</div>
<div class = "content-left">
<div>
* 회계계정코드
</div>
<div id="AXTreeTarget" style="height:613px; "></div>
</div>
</form:form>
<form:form commandName="searchVO2" id="listForm_" name="listForm_" method="post">
<input type="hidden" name="largecode_" id="largecode_" />
<input type="hidden" name="midgcode_" id="midgcode_" />
<div class = "content-right">
<div>
<input type="button" style = "float: right;" value="(-) 행삭제" class="AXButtonSmall" onclick="fnObj2.removeGrid2();" />
<input type="button" style = "float: right;" value="(+) 행추가" class="AXButtonSmall" onclick="fnObj2.appendGrid2();" />
</div>
<div id="AXGridTarget2" style="height: 613px;"></div>
</div>
<div class = "content-bottom">
<button type="button" style = "float: right;margin-right:10px;margin-top: 7px;" class="AXButton Red" onclick="fnObj.saveCommon();" >
<i class="fa fa-hand-o-up fa-lg"></i> 저장하기
</button>
<button type="button" style = "float: right;margin-right:10px;margin-top: 7px;" class="AXButton Red" onclick="groupDB()" >
<i class="fa fa-arrow-circle-o-down fa-lg"></i> Excel-Down
</button>
</div>
</form:form>
</div>
</section>
<!-- footer start -->
<footer id = "footer">
<jsp:include page="../../layout/footer.jsp"/>
</footer>
</body>
</html>
이걸로 교체해서 해 보시고요.. 소스는 꼭 정리 하세요...ready 이벤트를 한 페이지 안에서 굉장히 자주 거시네요 .. AXJ.min.css 하셨으면 다른 css는 제가 알기론 불러올 필요가 없는듯 합니다. prettify는 쓰실려고 일부러 해 놓으신 건가요?...
제가 봤을땐 axisj 경로가 틀렸거나 prettify 관련 오류 같기도 하고요.
일단 제가 수정 한 부분은 경로를 cdn 으로 변경 하고 prettify 관련 부분을 제거 했습니다.
아래 스샷처럼 나오네요.
저또한 매우 잘나옵니다..
엑시스제이 라이브러리 경로가 틀릴 확률이 높습니다.
@lhslive 아그러네요.. 아 정말 너무 감사드립니다.
개발자 도구(F12 누르면 나옵니다. 대게는)에 네크워크탭이 있을 건데요. 리소스가 모두 살아 있는지 확인 해보세요. 아마 /axisj... 라는 경로가 프로젝트에 없으신것 같은데요.
@lhslive :+1: @gaedong2 :+1:
http://dev.axisj.com/samples/AXInput/calendar.html 여기서 보고 적용시킬려고 하는데요.
이렇게 input 선언하고
자바스크립트에서
[ fnObj3 = { pageStart3: function(){
} }; ]
이렇게 선언해줬습니다. 그런데 콘솔 오류가 SCRIPT438: 개체가 'bindDate' 속성이나 메서드를 지원하지 않습니다. AC0101S1.do, 줄 539 문자 4
라는 메세지가 뜨네요. 이거 bindDate메서드가 없는건가요?;;;