function CloseableTable(id,selecter){
	GetObject(id).switch_view_disable = new Array();
	var ths = GetObject(id).getElementsByTagName('THEAD')[0].getElementsByTagName('TH');
	var select = document.createElement('select');
	select.id = id + '_th';
	var l = ths.length;
	for(var i = 0; i < l; i++){
		var opt = document.createElement("option");
		opt.value = i;
		var str = document.createTextNode(ths[i].firstChild.nodeValue);
		opt.appendChild(str);
		select.appendChild(opt);
	}
	addEventSeter(select, 'change', SwitchSelecterChange);
	select.table  = GetObject(id);
	GetObject(id).selecter  = select;

	var input = document.createElement("input");
	input.name = id;
	input.id = id + '_switch';
	input.type = 'button';
	input.value = 'close';
	addEventSeter(input, 'click', SwitchView);

	input.table  = GetObject(id);
	GetObject(id).button  = input;

	GetObject(selecter).appendChild(select);
	GetObject(selecter).appendChild(input);
}
function SwitchSelecterChange(e){
	var el = e.target || e.srcElement;
	if(el.table.switch_view_disable[el.selectedIndex]){
		el.table.button.value = 'open';
	}
	else{
		el.table.button.value = 'close';
	}
}
function SwitchView(e){
	var el = e.target || e.srcElement;
	if(browser == 2){
		SwitchViewTable2(el.name);
	}
	else{
		SwitchViewTable3(el.name);
	}
}
function SwitchViewTable2(id){
	var tbl = GetObject(id);
	var index = tbl.selecter.value;
	var col = tbl.getElementsByTagName('COL')[index];
	var tbody = tbl.getElementsByTagName('TBODY')[0];
	var thead = tbl.getElementsByTagName('THEAD')[0];
	var tfoot = tbl.getElementsByTagName('TFOOT');
	var tfootflag = 0;

	if(tfoot.length >= 1){
		tfootflag = 1;
		tfoot = tfoot[0];
	}

	var blank = document.createElement('tbody');
	var blank2 = document.createElement('thead');
	var blank3 = document.createElement('tfoot');

	if(tfootflag){
		tbl.replaceChild(blank3, tfoot);
	}

	tbl.replaceChild(blank2, thead);
	tbl.replaceChild(blank, tbody);
	if(!tbl.switch_view_disable[index]){
		col.style.display = 'none';
		tbl.switch_view_disable[index] = 1;
		tbl.selecter.options[index].style.background = '#EAEAEA';
		tbl.button.value = 'open';
	}
	else{
		col.style.display = 'block';
		tbl.switch_view_disable[index] = 0;
		tbl.selecter.options[index].style.background = '#FFFFFF';
		tbl.button.value = 'close';
	}
	tbl.replaceChild(tbody, blank);
	tbl.replaceChild(thead,blank2);

	if(tfootflag){
		tbl.replaceChild(tfoot,blank3);
	}
}
function SwitchViewTable3(id){
	var tbl = GetObject(id);
	var index = tbl.selecter.value;
	var th = tbl.getElementsByTagName('THEAD')[0].getElementsByTagName('TH')[index];

	var tf = tbl.getElementsByTagName('TFOOT');
	if(tf.length >= 1){
		tf = tf[0].getElementsByTagName('td')[index]
	}

	var tbody = tbl.getElementsByTagName('TBODY')[0];

	var rows = tbody.rows;
	var l = rows.length;
	var change;

	if(!tbl.switch_view_disable[index]){
		tbl.switch_view_disable[index] = 1;
		tbl.button.value = 'open';
		change = 'none';
	}
	else{
		tbl.switch_view_disable[index] = 0;
		tbl.button.value = 'close';
		change = 'table-cell';
	}


	for (var i = 0; i < l; i++) {
		rows[i].cells[index].style.display = change;
	}


	th.style.display = change;

	if(tf){
		tf.style.display = change;
	}
}
