반응형

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=euc-kr" />
<meta http-equiv="imagetoolbar" content="no">
<link rel="stylesheet" href="/css/admin.css" type="text/css">
<script language="javascript">
<!--
function Category(value, name, parent, depth) {
  this.value = value;
  this.name = name;
  this.parent = parent;
  this.depth = depth;
  this.length = 0;
}

function addCategory(category, value, name, parent, depth) {
  category[category.length] = new Category(value, name, parent, depth);
  category.length++;
}

var category = new Category();
var category1 = new Category();

addCategory(category, '00', '자동차계약', '01', '1');
addCategory(category, '01', '개인용', '01', '2');
addCategory(category, '02', '업무용', '01', '2');
addCategory(category, '03', '영업용', '01', '2');
addCategory(category, '04', '플러스 개인용', '01', '2');
addCategory(category, '05', '플러스 업무용', '01', '2');
addCategory(category, '06', '참좋은 개인용', '01', '2');
addCategory(category, '99', '기타', '01', '2');
addCategory(category, '00', '자동차보상', '02', '1');
addCategory(category, '01', '대인Ⅰ', '02', '2');
addCategory(category, '02', '대인Ⅱ', '02', '2');
addCategory(category, '03', '대물', '02', '2');
addCategory(category, '04', '자손', '02', '2');
addCategory(category, '05', '자차', '02', '2');
addCategory(category, '06', '무보험', '02', '2');
addCategory(category, '07', '상해', '02', '2');
addCategory(category, '08', '타차', '02', '2');
addCategory(category, '99', '기타', '02', '2');
addCategory(category, '00', '보장사업', '03', '1');
addCategory(category, '00', '장기계약', '04', '1');
addCategory(category, '01', '재물', '04', '2');
addCategory(category, '02', '운전자', '04', '2');
addCategory(category, '03', '저축성', '04', '2');
addCategory(category, '04', '상해', '04', '2');
addCategory(category, '05', '연금', '04', '2');
addCategory(category, '06', '질병', '04', '2');
addCategory(category, '99', '기타', '04', '2');
addCategory(category, '00', '장기보상', '05', '1');
addCategory(category, '01', '재물', '05', '2');
addCategory(category, '02', '상해', '05', '2');
addCategory(category, '03', '질병', '05', '2');
addCategory(category, '04', '연금', '05', '2');
addCategory(category, '05', '저축성', '05', '2');
addCategory(category, '06', '운전자', '05', '2');
addCategory(category, '99', '기타', '05', '2');
addCategory(category, '00', '일반보상', '06', '1');
addCategory(category, '01', '화재', '06', '2');
addCategory(category, '02', '기술', '06', '2');
addCategory(category, '03', '근재', '06', '2');
addCategory(category, '04', '배상', '06', '2');
addCategory(category, '05', '종합', '06', '2');
addCategory(category, '06', '상해', '06', '2');
addCategory(category, '07', '기타특종', '06', '2');
addCategory(category, '08', '종합(物)', '06', '2');
addCategory(category, '09', '기타특종(物)', '06', '2');
addCategory(category, '99', '기타', '06', '2');
addCategory(category, '00', '융자', '07', '1');
addCategory(category, '00', '영업', '08', '1');
addCategory(category, '00', '기타', '09', '1');
addCategory(category, '00', '일반계약', '10', '1');
addCategory(category, '01', '상해', '10', '2');
addCategory(category, '02', '재물', '10', '2');
addCategory(category, '99', '기타', '10', '2');

addCategory(category1, '10000', '자동차계약', '00000', '1');
addCategory(category1, '20000', '장기계약', '00000', '1');
addCategory(category1, '30000', '고객서비스', '00000', '1');
addCategory(category1, '10100', '계약인수', '10000', '2');
addCategory(category1, '10200', '계약관리', '10000', '2');
addCategory(category1, '10300', '계약해지', '10000', '2');
addCategory(category1, '20100', '계약인수', '20000', '2');
addCategory(category1, '20200', '계약관리', '20000', '2');
addCategory(category1, '20300', '계약해지', '20000', '2');
addCategory(category1, '30100', '임직원', '30000', '2');
addCategory(category1, '30200', 'PA', '30000', '2');
addCategory(category1, '30300', 'PA 제기 불만', '30000', '2');
addCategory(category1, '30400', '대출', '30000', '2');
addCategory(category1, '30500', '콜센터', '30000', '2');
addCategory(category1, '30600', 'SOS서비스', '30000', '2');
addCategory(category1, '30700', '현장출동', '30000', '2');
addCategory(category1, '30800', '시스템', '30000', '2');
addCategory(category1, '10101', '증권, 약관, 영수증 미수령', '10100', '3');
addCategory(category1, '10102', '인수기준 불만', '10100', '3');
addCategory(category1, '10103', '계약정보 착오입력', '10100', '3');
addCategory(category1, '10104', '자동이체 갱신특약 안내미흡', '10100', '3');
addCategory(category1, '10105', '특약/보상범위등 상품안내 미흡', '10100', '3');
addCategory(category1, '10106', '계약자 동의없이 임의 계약체결', '10100', '3');
addCategory(category1, '10107', '기타', '10100', '3');
addCategory(category1, '10201', '수납방법 배서누락', '10200', '3');
addCategory(category1, '10202', '자동이체일/갱신/연체/실효안내 미흡', '10200', '3');
addCategory(category1, '10203', '특약/담보변경사항 안내 미흡', '10200', '3');
addCategory(category1, '10204', '기타 요청 배서 지연 및 누락', '10200', '3');
addCategory(category1, '10205', '자동이체 해지/수납방법 변경 후 계좌에서 자동이체됨', '10200', '3');
addCategory(category1, '10206', '차량대체착오', '10200', '3');
addCategory(category1, '10207', '신용정보 유출 여부', '10200', '3');
addCategory(category1, '10208', '기타', '10200', '3');
addCategory(category1, '10301', '해지환급금 불만', '10300', '3');
addCategory(category1, '10302', '관련서류안내착오', '10300', '3');
addCategory(category1, '10303', '해지후 보험료 이체', '10300', '3');
addCategory(category1, '10304', '기타', '10300', '3');
addCategory(category1, '20101', '증권(영수증) 미수령', '20100', '3');
addCategory(category1, '20102', '인수기준 불만', '20100', '3');
addCategory(category1, '20103', '계약정보 착오입력', '20100', '3');
addCategory(category1, '20104', '피보험자 선정 착오', '20100', '3');
addCategory(category1, '20105', '특약/보상범위등 상품안내 미흡', '20100', '3');
addCategory(category1, '20106', '계약자 동의없이 임의 계약체결', '20100', '3');
addCategory(category1, '20107', '기타', '20100', '3');
addCategory(category1, '20201', '자동이체 약정일 임의 변경', '20200', '3');
addCategory(category1, '20202', '영업조직 임의로 실시간 출금', '20200', '3');
addCategory(category1, '20203', '특약/담보변경사항 안내 미흡', '20200', '3');
addCategory(category1, '20204', '수납방법 배서누락', '20200', '3');
addCategory(category1, '20205', '자동이체일/갱신/연체안내/실효안내 미흡', '20200', '3');
addCategory(category1, '20206', '기타 요청 배서 누락', '20200', '3');
addCategory(category1, '20207', '자동이체 해지/수납방법 변경 후 계좌에서 자동이체됨', '20200', '3');
addCategory(category1, '20208', '신용정보 유출 여부', '20200', '3');
addCategory(category1, '20209', '기타', '20200', '3');
addCategory(category1, '20301', '환급금 불만', '20300', '3');
addCategory(category1, '20302', '관련서류 안내착오', '20300', '3');
addCategory(category1, '20303', '해지후 보험료 이체', '20300', '3');
addCategory(category1, '20304', '기타', '20300', '3');
addCategory(category1, '30101', '업무처리 미흡', '30100', '3');
addCategory(category1, '30102', '응대 불친절', '30100', '3');
addCategory(category1, '30103', '약속 불이행', '30100', '3');
addCategory(category1, '30104', '직업윤리 위반', '30100', '3');
addCategory(category1, '30105', '기타', '30100', '3');
addCategory(category1, '30201', '업무처리 미흡', '30200', '3');
addCategory(category1, '30202', '계약후 별도의 관리없음', '30200', '3');
addCategory(category1, '30203', '응대 불친절', '30200', '3');
addCategory(category1, '30204', '약속 불이행', '30200', '3');
addCategory(category1, '30205', '보험료 유용', '30200', '3');
addCategory(category1, '30206', '직업윤리 위반', '30200', '3');
addCategory(category1, '30207', '기타', '30200', '3');
addCategory(category1, '30301', '수당,수수료 관련', '30300', '3');
addCategory(category1, '30302', '조직이관,해촉', '30300', '3');
addCategory(category1, '30303', '영업관리상 불만', '30300', '3');
addCategory(category1, '30304', '기타', '30300', '3');
addCategory(category1, '30401', '대출이자 관련', '30400', '3');
addCategory(category1, '30402', '신용정보 유출 여부', '30400', '3');
addCategory(category1, '30403', '소득정산관련', '30400', '3');
addCategory(category1, '30404', '대출이자연체 안내미흡', '30400', '3');
addCategory(category1, '30405', '기타', '30400', '3');
addCategory(category1, '30501', '응대 불친절', '30500', '3');
addCategory(category1, '30502', '상품/보상/배서 관련 착오안내', '30500', '3');
addCategory(category1, '30503', '변경업무 처리 미흡', '30500', '3');
addCategory(category1, '30504', '기타', '30500', '3');
addCategory(category1, '30601', '정비서비스 불만', '30600', '3');
addCategory(category1, '30602', '부당요금 청구', '30600', '3');
addCategory(category1, '30603', '출동지연', '30600', '3');
addCategory(category1, '30604', '현장조치 미흡', '30600', '3');
addCategory(category1, '30605', '업체 불친절', '30600', '3');
addCategory(category1, '30606', '업체 횡포 (부당한 요구)', '30600', '3');
addCategory(category1, '30607', '직원 복장/태도 불량', '30600', '3');
addCategory(category1, '30608', '기타', '30600', '3');
addCategory(category1, '30701', '현장출동 미실시(지연)', '30700', '3');
addCategory(category1, '30702', '현장조치 미흡', '30700', '3');
addCategory(category1, '30703', '직원 불친절', '30700', '3');
addCategory(category1, '30704', '직원 복장/태도 불량', '30700', '3');
addCategory(category1, '30705', '기타', '30700', '3');
addCategory(category1, '30801', '이메일 및 핸드폰으로 불필요한 안내', '30800', '3');
addCategory(category1, '30802', '전산 등 시스템으로 야기되는 불만', '30800', '3');
addCategory(category1, '30803', '홈페이지 관련 불만', '30800', '3');
addCategory(category1, '30804', '기타', '30800', '3');
 

function initForm() {
    var frm = document.form1;
    var j = 1;
    var k = 1;
    for (i = 0; i < category.length; i++) {
        if (category[i].depth == "1") {
            frm.ins_type.options[0] = new Option(":: 보험종목 ::", "");
            frm.ins_type.options[j] = new Option(category[i].name, category[i].parent);
            j++;
        }
    }
    for (i = 0; i < category1.length; i++) {
        if (category1[i].depth == "1") {
            frm.codeA.options[0] = new Option(":: 대분류 ::", "");
            frm.codeA.options[k] = new Option(category1[i].name, category1[i].value);
            k++;
        }
    }
    frm.ins_type.selectedIndex = 0;
    frm.codeA.selectedIndex = 0;
    changeMiddle(frm.ins_type, frm.ins_s_type, "1");
    changeMiddle(frm.codeA, frm.codeB, "1");
}

function changeMiddle(obj, changeObj, depth) {
    var j = 1;
    var i = obj.selectedIndex;
    if (i < 0) i = 0;
    var value = obj[i].value;
   
    if (obj == document.form1.ins_type) {
        changeObj.options[0] = new Option(":: 보험종목세부 ::", "");
        for (i = 0; i < category.length; i++) {
            var parent = category[i].parent;
            if (parent == value && category[i].depth == "2") {
                changeObj.options[j] = new Option(category[i].name, category[i].value);
                j++;
            }
        }
    } else {
        if (depth == "3") {
            changeObj.options[0] = new Option(":: 소분류 ::", "");
        } else {
            document.form1.codeB.options[0] = new Option(":: 중분류 ::", "");
            document.form1.codeC.options[0] = new Option(":: 소분류 ::", "");
        }
        for (i = 0; i < category1.length; i++) {
            var parent = category1[i].parent;
            if (parent == value) {
                changeObj.options[j] = new Option(category1[i].name, category1[i].value);
                j++;
            }
        }
    }

    changeObj.selectedIndex = 0;
}

function submitForm(){
    alert(document.form1.ins_type.value);
    alert(document.form1.ins_s_type.value);
    alert(document.form1.codeA.value);
    alert(document.form1.codeB.value);
    alert(document.form1.codeC.value);
}

// -->
</SCRIPT>
</head>

<body onLoad="initForm();">

<h1>3단 동적 셀렉트 박스 예제</h1>

<form name="form1" method="get" action="#">
<select name="ins_type" onchange="changeMiddle(this, document.form1.ins_s_type, '2')"></select>
<select name="ins_s_type"></select><br>

<select name="codeA" onchange="changeMiddle(this, document.form1.codeB, '2')"></select>
<select name="codeB" onchange="changeMiddle(this, document.form1.codeC, '3')"></select>
<select name="codeC"></select>
</form>
<input type="button" value="submit" onclick="submitForm();">
</body>
</html>



 

Posted by 1010