    function addSelOption( selObj, myValue, myText )
    {
        selObj.length++;
        selObj.options[ selObj.length - 1].value = myValue ;
        selObj.options[ selObj.length - 1].text  = myText;

    }

    function createReyearSelection(recd, selObj, midashi, aryValue )
    {
		var unichk = new Array();
        selObj.length = 0;
		if (midashi != "") {
	        addSelOption( selObj, "", midashi);
		}
        // 初期化
        for( var i=0; i < aryValue.length; i++)
        {
			if (aryValue[i][0] == recd) { // 受講区分
				if (unichk[aryValue[i][1]] == undefined ) { // 再受講年度
					unichk[aryValue[i][1]] = aryValue[i][1];
		            addSelOption ( selObj , aryValue[i][1], aryValue[i][1]);
				}
			}
        }
    }

	function chgRecd(recd, reyearObj, revenueObj, aryValue){
		if ('1' == recd) { // 受講区分：一般
			reyearObj.disabled = true;
			revenueObj.disabled = true;
		} else {
			reyearObj.disabled = false;
			createReyearSelection(recd, reyearObj, '--- 以下から選択して下さい。---', aryValue);
			revenueObj.disabled = true;
		}
	}

    function createRrevenueSelection(recd, reyear, selObj, midashi, aryValue )
    {
		var unichk = new Array();
        selObj.length = 0;
		if (midashi != "") {
	        addSelOption( selObj, "", midashi);
		}
        // 初期化
        for( var i=0; i < aryValue.length; i++)
        {
			if ((aryValue[i][0] == recd) && (aryValue[i][1] == reyear)) { // 受講区分、再受講年度
				if (unichk[aryValue[i][2]] == undefined ) { // 再受講年度
					unichk[aryValue[i][2]] = aryValue[i][2];
		            addSelOption ( selObj , aryValue[i][2], aryValue[i][2]);
				}
			}
        }
    }

	function chgReyear(recd, reyear, reyearObj, revenueObj, aryValue){
		if ('1' == recd) { // 受講区分：一般
			reyearObj.disabled = true;
			revenueObj.disabled = true;
		} else {
			if ('' != reyear) {
				reyearObj.disabled = false;
				revenueObj.disabled = false;
				createRrevenueSelection(recd, reyear, revenueObj, '--- 以下から選択して下さい。---', aryValue);
			} else {
				revenueObj.disabled = true;
				createRrevenueSelection(recd, reyear, revenueObj, '--- 以下から選択して下さい。---', aryValue);
			}
		}
	}

// 関数名：TR置換などで使用する。
// IE6でTABLE/THEAD/TFOOT/TR要素内をHTML表記で書換えることができるような関数
//
function  replaceInnerHtml(tgtElm, innerHTML) {

    for (;;) {
        if (typeof innerHTML!='string'||typeof tgtElm!='object'||tgtElm.nodeType!=1/*ELEMENT_NODE*/) break;
        try {
            tgtElm.innerHTML=innerHTML;
        }
        catch (e) {
            var chld;
            while (chld=tgtElm.firstChild) tgtElm.removeChild(chld);    //  remove all child elements
            if (innerHTML.match(/^\s*$/) ) break;   //  clear only

            var tagName=tgtElm.tagName.toLowerCase(), tmp, html='<'+tagName+'>'+innerHTML+'</'+tagName+'>';
            switch (tagName) {
                case    'thead' :
                case    'tbody' :
                case    'tfoot' :
                    tmp=document.createElement('table');
                    replaceInnerHtml(tmp, html);
                    break;
                case    'tr'    :
                    tmp=document.createElement('table');
                    replaceInnerHtml(tmp, '<tbody>'+html+'</tbody>');
                    tmp=tmp.firstChild;
                    break;
                default         :
                    tmp=document.createElement('div');
                    tmp.innerHTML=html;
                    break;
            }
            var tmpElm=tmp.firstChild;
            while (chld=tmpElm.firstChild) tgtElm.appendChild(chld);
        }
        break;
    }
}

// 関数名：TR置換
// 　買い換えたいテーブルと行内容を指定して書き換える。
// tblname : テーブルにつけたid
// ※テーブルは以下の構造でないといけません。
//  <table id="tblname">
//  <thead><tr><th>THEAD要素</th></tr></thead>
//  <tbody><tr><td>TBODY要素</td></tr></tbody>
//  <tbody><tr><td>TBODY要素</td></tr></tbody>
//  <tfoot><tr><th>TFOOT要素</th></tr></tfoot>
//  </table>
// rownum : tbodyの列位置（0起算）
// tddata : 書き換えたい<td>から</td>の内容
//
function replaceTableRow(tblname, rownum, tddata) {

	var	d=document;
	var	g=function(id){return d.getElementById(id)};
	t=g(tblname);
	var	b=t.getElementsByTagName('tbody')[rownum],tr;

	if (b&&(tr=b.getElementsByTagName('tr')[0])) {
		replaceInnerHtml(tr,
			[
			tddata
			].join('')
		);
	}

	if (b&&(tr=b.getElementsByTagName('tr')[1])) {
		var c = tr.getElementsByTagName('img')[0],img;

		c.src = "/img/btn/btn-hall02.gif";
		c.width = 110;
		c.height = 20;
	}
}


// 関数名：TABLEクリア
// tblname : テーブルにつけたid
// ※テーブルおよびテーブル内容は以下の構造でないといけません。
//  <table id="tblname">
//  <thead><tr><th>THEAD要素</th></tr></thead>
//  <tbody><tr><td>TBODY要素</td></tr></tbody>
//  <tbody><tr><td>TBODY要素</td></tr></tbody>
//  <tfoot><tr><th>TFOOT要素</th></tr></tfoot>
//  </table>
//
function clearTable(tblname) {
	var g=function(id){return document.getElementById(id)};
	t=g(tblname);
	replaceInnerHtml(t,'');
}

