thomasJang / axisj

javascript UI library
http://axisj.com/
GNU Lesser General Public License v2.1
310 stars 86 forks source link

bindDate 질문입니다. #441

Closed JourPlan closed 9 years ago

JourPlan commented 9 years ago

http://dev.axisj.com/samples/AXInput/calendar.html 여기서 보고 적용시킬려고 하는데요.

이렇게 input 선언하고

자바스크립트에서

[ fnObj3 = { pageStart3: function(){

        $("#AXInputDate3").bindDate({selectType:"y"});

    },
    unbindInput: function () {
        $("#AXInputDate").unbindInput();
    },
    bindInput: function () {
        $("#AXInputDate").bindDate({align:"right", valign:"top", separator:"/", onChange:function(){toast.push(Object.toJSON(this));}});
    }

} }; ]

이렇게 선언해줬습니다. 그런데 콘솔 오류가 SCRIPT438: 개체가 'bindDate' 속성이나 메서드를 지원하지 않습니다. AC0101S1.do, 줄 539 문자 4

라는 메세지가 뜨네요. 이거 bindDate메서드가 없는건가요?;;;

lhslive commented 9 years ago

js 파일이 정상적으로 로드 되었는지 확인 해 보시는게 좋을거 같네요.

JourPlan commented 9 years ago

@lhslive 안녕하세요 답변 감사드립니다. 정상적으로 로드되었는지 확인은 어떤식으로하죠??

JourPlan commented 9 years ago

추가질문남깁니다. bind쪽이 지금 다 안되더라구요.. bindSelector쪽도 콘솔 에러가

SCRIPT438: 개체가 'bindSelector' 속성이나 메서드를 지원하지 않습니다. AC0103S1.do, 줄 366 문자 28

이런식으로 뜨네요.. js문제인건가요?

lhslive commented 9 years ago

소스를 전체 긁어서 사용하신거면.. 해당 소스는 서버경로를 사용하므로.. 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>

이걸로 교체해 보세요.

JourPlan commented 9 years ago

@lhslive 하.. 답변 감사드립니다. 근데 신기한게 말씀해주신거 넣고 돌리니까 되더라구요. 근데 시간좀 지나니까 희한하게 또 안되네요... 뭘까요;;;

JourPlan commented 9 years ago

추가 질문입니다. 혹시 이거 순서가 있나요? 제가 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));

이런식으로 소스를 줬습니다. 이런식으로 주면 문제 있나요?

lhslive commented 9 years ago

전체 소스를 올려주세요.

부분만 봐서는 pageStart 안에서 document ready 이벤트를 선언 하는것 같네요. fnObj 의 pageStart 안에서 전부 다 선언 하시고

jQuery(document).ready 에서 fnObj.pageStart.delay(0.1) 를 호출하셔서 확인해 보시는게 좋을 것 같습니다.

JourPlan commented 9 years ago

@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>

아래 소스입니다.

gaedong2 commented 9 years ago

되다가 안되면... 아무래도 상단 선언부

 <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으로 임포트 하면 된다고 하셨던것 같은데...

JourPlan commented 9 years ago

자바스크립트가 충돌나는거같긴한데 순서가 잘못된건가요?? 말씀하신 CDN은 어떤걸 말씀하시는거죠?;

gaedong2 commented 9 years ago

''' var myGrid = new AXGrid(); // instance var itemSum = 0; var fnObj; var fnObj2; var fnObj3; var myTree = new AXTree(); ''' fnObj 를 두번쓰시네요...

현재 순서로만 보면 fnObj; fnObj; fnObj3 이렇게 되어있습니다만... 일부로 이렇게 하신건가요?

JourPlan commented 9 years ago

아 제가 소스 옮겨서 적는과정에서 잘못된거같습니다. 실제 소스에서는 fnObj,fnObj2, fnObj3제대로 적었습니다.

gaedong2 commented 9 years ago

그냥 페이지 전체 소스올려주심이 좋을듯 싶어요..

JourPlan commented 9 years ago
<%@ 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&param2=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>&nbsp;&nbsp;&nbsp;
                        <input type="text" name="" id="AXInputDate3" class="AXInput W50" />
                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label>계정과목</label>&nbsp;&nbsp;&nbsp;
                        <input type="text" name="searchKeyword" style="ime-mode:inactive;" size=50 value="" class="AXInput" onkeydown="javascript:if(event.keyCode==13){groupDB();}"/>
                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label>사용여부</label>&nbsp;&nbsp;&nbsp;
                               <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>

전체소스입니다. 뭐가문제인지 ㅠㅠ

lhslive commented 9 years ago
<%@ 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&param2=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>&nbsp;&nbsp;&nbsp;
                        <input type="text" name="" id="AXInputDate3" class="AXInput W50" />
                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label>계정과목</label>&nbsp;&nbsp;&nbsp;
                        <input type="text" name="searchKeyword" style="ime-mode:inactive;" size=50 value="" class="AXInput" onkeydown="javascript:if(event.keyCode==13){groupDB();}"/>
                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label>사용여부</label>&nbsp;&nbsp;&nbsp;
                               <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 관련 부분을 제거 했습니다.

아래 스샷처럼 나오네요.

k-5

gaedong2 commented 9 years ago

snag-0010 snag-0011

저또한 매우 잘나옵니다..

엑시스제이 라이브러리 경로가 틀릴 확률이 높습니다.

JourPlan commented 9 years ago

@lhslive 아그러네요.. 아 정말 너무 감사드립니다.

thomasJang commented 9 years ago

개발자 도구(F12 누르면 나옵니다. 대게는)에 네크워크탭이 있을 건데요. 리소스가 모두 살아 있는지 확인 해보세요. 아마 /axisj... 라는 경로가 프로젝트에 없으신것 같은데요.

hyunjun19 commented 9 years ago

@lhslive :+1: @gaedong2 :+1: