	//xmlhttp通信
	function init_ajax(){
		Ajax = function(){
			this.timeID = 0;
			this.xmlhttp = createXMLHttp();
		}
		Ajax.prototype = {
			load:function(connectURL){//受信専用
				try{
					var xmlhttp = this.xmlhttp;
					var obj = this;
					xmlhttp.abort();
					requestTimeoutSet(xmlhttp,this);
					xmlhttp.onreadystatechange = function(){
						getResponse(xmlhttp,obj);
					}
					
					xmlhttp.open("get",connectURL,true);
					xmlhttp.setRequestHeader("Content-Type","text/plain");
					xmlhttp.send("");
				}catch(e){
					xmlhttpRequestCancel(xmlhttp,obj);
					alert(e)
				}
			},
			sendAndLoad:function(connectURL,sendData){//受信＆送信
				try{
					var xmlhttp = this.xmlhttp;
					var obj = this;
					xmlhttp.abort();
					requestTimeoutSet(xmlhttp,obj);
					xmlhttp.onreadystatechange = function(){
						getResponse(xmlhttp,obj);
					}
					var sendStr = "";
					for(var i in sendData){sendStr += i + "=" + sendData[i] + "&";}
					
					xmlhttp.open("get",connectURL,false);
					xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=Shift_JIS;");
					xmlhttp.send("&"+sendStr);
				}catch(e){
					xmlhttpRequestCancel(xmlhttp,obj);
					alert(e)
				}
			}
		}
		
		//サーバからのレスポンス確認
		function getResponse(xmlhttp,obj){
			// alert(xmlhttp.readyState);
			if(xmlhttp.readyState == 4){
				var responseData = xmlhttp.responseText;
				// alert(responseData);
				if(xmlhttp.status == 200){
					try{
						obj.onSuccess(responseData);
					}catch(e){}
				}else{//エラー処理
					try{
						obj.onFailure();
					}catch(e){}
					var errorText = "";
					switch(xmlhttp.status){
						case 0:
							errorText = "ローカル上で通信されています";
							break;
						case 403:
							errorText = "ファイルのアクセス権がありません";
							break;
						case 404:
							errorText = "ファイルが存在しません";
							break;
						case 500:
							errorText = "サーバエラーです";
							break;
						case 503:
							errorText = "一時的なサーバエラーです";
							break;
						default:
							errorText = "例外的な通信エラーが発生しました";
							break;
					}
					alert("ERROR status"+xmlhttp.status +" "+ errorText);
				}
				xmlhttpRequestCancel(xmlhttp,obj);
			}
		}
		
		//通信タイムアウト処理
		function requestTimeoutSet(xmlhttp,obj){
			var timeoutNum = 10000;//ミリ秒
			obj.timeID = setTimeout(function(){
				alert("タイムアウトERRORが発生しました");
				xmlhttpRequestCancel(xmlhttp,obj);
			},timeoutNum);
		}
		//タイムアウト処理キャンセル
		function xmlhttpRequestCancel(xmlhttp,obj){
			clearTimeout(obj.timeID);
			xmlhttp.abort();
		}
		//xmlHttpRequest_create
		function createXMLHttp(){
			var obj = null;
			try{ //Mozilla Opera safari IE7
				obj = new XMLHttpRequest();
			}catch(e){
				try{ //IE6
					obj = new ActiveXObject("Msxml2.XMLHTTP");
				}catch(e){
					try{ //IE5 5.5
						obj = new ActiveXObject("Microsoft.XMLHTTP");
					}catch(e){
					}
				}
			}
			return obj;
		}
	}
	init_ajax();
	function setTable(){
		var tableAjax = new Ajax();
		function tableResult(returnValue){
			var tgtObj = document.getElementById("searchresult");
			if(tgtObj != null){
				tgtObj.innerHTML = returnValue;
			}
		}
		tableAjax.onSuccess = tableResult;
		var tmpParam = "?od="
		if(document.getElementById("od_1").checked){
			tmpParam += "1";
		}else{
			tmpParam += "0";
		}
		if(document.getElementById("cc").checked){
			tmpParam += "&cc=1";
		}
		if(document.getElementById("co").checked){
			tmpParam += "&co=1";
		}
		if(document.getElementById("ch").checked){
			tmpParam += "&ch=1";
		}
		if(document.getElementById("cl").checked){
			tmpParam += "&cl=1";
		}
		if(document.getElementById("cv").checked){
			tmpParam += "&cv=1";
		}
		tableAjax.load("./charttable.php" + tmpParam);
		return false;
	}


