//ajax方式得到trs中的查询词，访问后台返回检索词 Gets the browser specific XmlHttpRequest Object
// 开始 AJAX request.
//var searchReq = createAjaxObj();//创建XmlHttpRequest对象1

function searchSuggest(type,currentInput) {
	if (navigator.appName == "Microsoft Internet Explorer") {	//IE下触发
		if ((event.keyCode != 38) && (event.keyCode != 40)&& (event.keyCode != 13)){
			if (searchReq.readyState == 4 || searchReq.readyState == 0) {
				var str = currentInput.value;
				str = ltrim(str);// 去掉左边空格
				///alert(str);alert(encodeURI(str));
				if (str != "") {
					// 请求参数初始化
					searchReq.open("POST", 'ajaxSearch?type='+type+'&txtSearch=' + encodeURI(str),true);
					searchReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); // 因为请求方式为POST,所以这里要设置请求头.(如果请求方式为GET,此句代码可以省略)
					if(type=="trs"){
						searchReq.onreadystatechange = handleSearchSuggest;//站内商家和26万条信息
					} else if(type=="lifeQuery"){
						searchReq.onreadystatechange = handleLifeSuggest;//站内商家
					}
					/*
					else if(type=="pointQuery"){
						searchReq.onreadystatechange = handleStationSuggest;
					}
					else if(type=="lineQuery"){
						searchReq.onreadystatechange = handleLineSuggest;
					}
					else if(type=="infoStartQuery"){
						searchReq.onreadystatechange = handleInfoStartSuggest;
					}
					else if(type=="infoEndQuery"){
						searchReq.onreadystatechange = handleInfoEndSuggest;
					}
					*/
					searchReq.send(null); // 向服务器端发送参数
				} else {
					if(type=="trs"){handleSearchSuggest();}
					else if(type=="lifeQuery"){handleLifeSuggest();}
					else if(type=="pointQuery"){handleStationSuggest();}
					else if(type=="lineQuery"){handleLineSuggest();}				
					else if(type=="infoStartQuery"){handleInfoStartSuggest();}
					else if(type=="infoEndQuery"){handleInfoEndSuggest();}
				}
			}
		}
	}else{	//火狐下触发
			if (searchReq.readyState == 4 || searchReq.readyState == 0) {
				var str = currentInput.value;
				str = ltrim(str);// 去掉左边空格
				if (str != "") {
					// 请求参数初始化
					searchReq.open("POST", './ajaxSearch?type='+type+'&txtSearch=' + encodeURI(str),true);
					searchReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); // 因为请求方式为POST,所以这里要设置请求头.(如果请求方式为GET,此句代码可以省略)
					if(type=="trs"){					//沿线检索调用的方法
						searchReq.onreadystatechange = handleSearchSuggest;
					} 
					else if(type=="lifeQuery"){
						searchReq.onreadystatechange = handleLifeSuggest;//站内商家
					}
					else if(type=="pointQuery"){
						searchReq.onreadystatechange = handleStationSuggest;
					}
					else if(type=="lineQuery"){
						searchReq.onreadystatechange = handleLineSuggest;
					}
					else if(type=="infoStartQuery"){
						searchReq.onreadystatechange = handleInfoStartSuggest;
					}
					else if(type=="infoEndQuery"){
						searchReq.onreadystatechange = handleInfoEndSuggest;
					}
					searchReq.send(null); // 向服务器端发送参数
				} else {
					if(type=="trs"){handleSearchSuggest();}
					else if(type=="lifeQuery"){handleLifeSuggest();}
					else if(type=="pointQuery"){handleStationSuggest();}
					else if(type=="lineQuery"){handleLineSuggest();}	
					else if(type=="infoStartQuery"){handleInfoStartSuggest();}
					else if(type=="infoEndQuery"){handleInfoEndSuggest();}
				}
			}
	}
}

//首页"全文检索"调用 AJAX response 的返回值
function handleSearchSuggest() {
	var str = document.getElementById('trsWordSearch').value;
	str = trim(str);											// 去掉字符串的左边空格
	var ss = document.getElementById('search_suggest')
	if (searchReq.readyState == 4) {
		if (str != "") {
			if (searchReq.responseXML != null) {				// 从服务器得到的值
				var xmlValue = searchReq.responseXML;
				var message_nodes=xmlValue.getElementsByTagName("trsList");
				//alert("message_nodes.length===" + message_nodes.length + "===");
				 if(message_nodes.length != 0 ){
						ss.innerHTML = '';
						ss.style.display="block";
					 if (navigator.appName == "Microsoft Internet Explorer") {
						 var vList = ""; 	
						for (var i = 0; i < message_nodes.length; i++){
					        var suggest = "";
			                var infoName = message_nodes[i].childNodes[0].text;
			                //alert("IE==" + infoName + "===");
			                var infoName_color = message_nodes[i].childNodes[1].text;
			                var b_typeName = message_nodes[i].childNodes[2].text;
			                var mtrStnName = message_nodes[i].childNodes[3].text;
			                var infoType = message_nodes[i].childNodes[4].text;
			                
			                suggest = '<table width="100%" border="0" onmouseover="suggestOver(this)" style="background-color: #FFFFFF"';
							suggest += 'onmouseout="suggestOut(this)" ';
							suggest += 'onclick="setTrsSearch(\''+infoName+'\');" ';
							suggest += 'class="suggest_link" ><tr><td align="left">' + infoName_color + '</td>';
							if(infoType == "ms"){
								suggest += '<td align="right"><img src="./images/trsImage/station_logo.bmp" align="texttop" ></img>'+ mtrStnName + '</td></tr></table>';
							}else{
								suggest += '<td align="right">'+ b_typeName + '</td></tr></table>';
							}
							vList += suggest;
		           		 }
						vList += '<table width="100%" border="0"><tr><td ><span width="99%" class="suggest_link" style="float:right;cursor: hand;color: #999999;text-decoration: underline;" onClick = "trsAjaxClose()">关闭</span></td></tr></table>';
						ss.innerHTML = '<div id="suggestList" style="background-color: #FFFFFF">' + vList + '</DIV>';
					}else{
						 var vList = ""; 	
						for (var i = 0; i < message_nodes.length; i++){
					        var suggest = "";
			                var infoName = message_nodes[i].childNodes[0].textContent;
			                var infoName_color = message_nodes[i].childNodes[1].textContent;
			                var b_typeName = message_nodes[i].childNodes[2].textContent;
			                var mtrStnName = message_nodes[i].childNodes[3].textContent;
			                var infoType = message_nodes[i].childNodes[4].textContent;
			                
			                suggest = '<table width="99%" border="0" onmouseover="suggestOver(this);" style="background-color: #FFFFFF"';
							suggest += 'onmouseout="suggestOut(this);" ';
							suggest += 'onclick="setTrsSearch(\''+infoName+'\');" ';
							suggest += 'class="suggest_link" ><tr><td align="left">' + infoName_color + '</td>';
							if(infoType == "ms"){
								suggest += '<td align="right"><img src="./images/trsImage/station_logo.bmp" align="texttop" ></img>'+ mtrStnName + '</td></tr></table>';
							}else{
								suggest += '<td align="right">'+ b_typeName + '</td></tr></table>';
							}
							vList += suggest;
		           		 }
						vList += '<table width="99%" border="0" style="background-color: #FFFFFF"><tr><td ><span width="99%" class="suggest_link" style="float:right;cursor: hand;color: #999999;text-decoration: underline;" onClick = "trsAjaxClose()">关闭</span></td></tr></table>';
						ss.innerHTML = '<div id="suggestList" style="background-color: #FFFFFF;z-index:200;position:absolute;border: 1px solid #CCCCCC; font-size:10pt;width:350px;float:left;">' + vList + '</DIV>';
					}
				 } else {
						ss.innerHTML = '';
						ss.style.display="none";
				 }
			} 
		} else {
			ss.innerHTML = '';
			ss.style.display="none";
		}
	}
}


//内页站内商家"全文检索"调用 AJAX response 的返回值
function handleLifeSuggest() {
	var str = document.getElementById('trsWordSearch').value;
	str = trim(str);											// 去掉字符串的左边空格
	var ss = document.getElementById('search_suggest')
	if (searchReq.readyState == 4) {
		if (str != "") {
			if (searchReq.responseXML != null) {				// 从服务器得到的值
				var xmlValue = searchReq.responseXML;
				var message_nodes=xmlValue.getElementsByTagName("trsList");
				 if(message_nodes.length != 0 ){
						ss.innerHTML = '';
						ss.style.display="block";
					 if (navigator.appName == "Microsoft Internet Explorer") {
						 var vList = ""; 	
						for (var i = 0; i < message_nodes.length; i++){
					        var suggest = "";
			                var infoName = message_nodes[i].childNodes[0].text;
			                //alert("IE==" + infoName + "===");
			                var infoName_color = message_nodes[i].childNodes[1].text;
			                var b_typeName = message_nodes[i].childNodes[2].text;
			                var mtrStnName = message_nodes[i].childNodes[3].text;
			                var infoType = message_nodes[i].childNodes[4].text;
			                
			                suggest = '<table width="100%" border="0" onmouseover="suggestOver(this)" style="background-color: #FFFFFF"';
							suggest += 'onmouseout="suggestOut(this)" ';
							suggest += 'onclick="setTrsSearch(\''+infoName+'\');" ';
							suggest += 'class="suggest_link" ><tr><td align="left">' + infoName_color + '</td>';
							if(infoType == "ms"){
								suggest += '<td align="right"><img src="./images/trsImage/station_logo.bmp" align="texttop" ></img>'+ mtrStnName + '</td></tr></table>';
							}else{
								suggest += '<td align="right">'+ b_typeName + '</td></tr></table>';
							}
							vList += suggest;
		           		 }
						vList += '<table width="100%" border="0"><tr><td ><span width="99%" class="suggest_link" style="float:right;cursor: hand;color: #999999;text-decoration: underline;" onClick = "trsAjaxClose()">关闭</span></td></tr></table>';
						ss.innerHTML = '<div id="suggestList" style="background-color: #FFFFFF">' + vList + '</DIV>';
					}else{
						 var vList = ""; 	
						for (var i = 0; i < message_nodes.length; i++){
					        var suggest = "";
			                var infoName = message_nodes[i].childNodes[0].textContent;
			                var infoName_color = message_nodes[i].childNodes[1].textContent;
			                var b_typeName = message_nodes[i].childNodes[2].textContent;
			                var mtrStnName = message_nodes[i].childNodes[3].textContent;
			                var infoType = message_nodes[i].childNodes[4].textContent;
			                
			                suggest = '<table width="99%" border="0" onmouseover="suggestOver(this);" style="background-color: #FFFFFF"';
							suggest += 'onmouseout="suggestOut(this);" ';
							suggest += 'onclick="setTrsSearch(\''+infoName+'\');" ';
							suggest += 'class="suggest_link" ><tr><td align="left">' + infoName_color + '</td>';
							if(infoType == "ms"){
								suggest += '<td align="right"><img src="./images/trsImage/station_logo.bmp" align="texttop" ></img>'+ mtrStnName + '</td></tr></table>';
							}else{
								suggest += '<td align="right">'+ b_typeName + '</td></tr></table>';
							}
							vList += suggest;
		           		 }
						vList += '<table width="99%" border="0" style="background-color: #FFFFFF"><tr><td ><span width="99%" class="suggest_link" style="float:right;cursor: hand;color: #999999;text-decoration: underline;" onClick = "trsAjaxClose()">关闭</span></td></tr></table>';
						ss.innerHTML = '<div id="suggestList" style="background-color: #FFFFFF;z-index:200;position:absolute;border: 1px solid #CCCCCC; font-size:10pt;width:350px;float:left;">' + vList + '</DIV>';
					}
				 } else {
						ss.innerHTML = '';
						ss.style.display="none";
				 }
			}
		} else {
			ss.innerHTML = '';
			ss.style.display="none";
		}
	}
}



/*function handleStationSuggest(){
	var str = document.getElementById('oPargument').value;
	// 去掉字符串的左边空格
	str = ltrim(str);
	if (searchReq.readyState == 4) {
		if (str != "") {
			var ss = document.getElementById('station_suggest');
			ss.innerHTML = '';
			// 从服务器得到的值
			if (searchReq.responseText != "") { 
				var str = searchReq.responseText.split("\n");//对"\n"进行分割
				// 查询出的结果的列表
				var vList = ""; 
				for (i = 0; i < str.length - 1; i++) {
					var suggest = '<div onmouseover="suggestOver(this);" ';
					suggest += 'onmouseout="suggestOut(this);" ';
					suggest += 'onclick=\"setSearch(\'oPargument\',\'station_suggest\',this.innerHTML);\" ';
					suggest += 'class="suggest_link">' + str[i] + '</div>';
					vList += suggest;
				}
				ss.style.width="80px";
				ss.innerHTML = '<div  style="z-index:200;position:absolute;border: 1px solid #CCCCCC; font-size:10pt;width:207px">' + vList + '</DIV>';
			}
		} else {
			document.getElementById('station_suggest').innerHTML = '';
		}
	}
}*/

function handleStationSuggest(){
	var str = document.getElementById('trsWordSearch').value;
	// 去掉字符串的左边空格
	str = ltrim(str);
	if (searchReq.readyState == 4) {
		if (str != "") {
			var ss = document.getElementById('search_suggest');
			ss.innerHTML = '';
			ss.style.display="block";
			// 从服务器得到的值
			if (searchReq.responseText != "") { 
				var str = searchReq.responseText.split("\n");//对"\n"进行分割
				// 查询出的结果的列表
				var vList = ""; 
				for (i = 0; i < str.length - 1; i++) {
					var suggest = '<div onmouseover="suggestOver(this);" ';
					suggest += 'onmouseout="suggestOut(this);" ';
					suggest += 'onclick=\"setSearch(\'trsWordSearch\',\'search_suggest\',this.innerHTML);\" ';
					suggest += 'class="suggest_link">' + str[i] + '</div>';
					vList += suggest;
				}
				ss.style.width="80px";
				ss.innerHTML = '<div  style="z-index:200;position:absolute;border: 1px solid #CCCCCC; font-size:10pt;width:207px">' + vList + '</DIV>';
			}
		} else {
			document.getElementById('search_suggest').innerHTML = '';
		}
	}
}


//志超   之前分沿线 、信息点、 资讯、站厅时函数  
/*function handleLineSuggest(){
	var str = document.getElementById('lNargument').value;
	// 去掉字符串的左边空格
	str = ltrim(str);
	if (searchReq.readyState == 4) {
		if (str != "") {
			var ss = document.getElementById('line_suggest');
			ss.innerHTML = '';
			// 从服务器得到的值
			if (searchReq.responseText != "") { 
				var str = searchReq.responseText.split("\n");//对"\n"进行分割
				// 查询出的结果的列表
				var vList = ""; 
				for (i = 0; i < str.length - 1; i++) {
					// Build our element string. This is cleaner using the
					// DOM,but IE doesn't support dynamically added attributes.
					var suggest = '<div onmouseover="suggestOver(this);" ';
					suggest += 'onmouseout="suggestOut(this);" ';
					suggest += 'onclick=\"setSearch(\'lNargument\',\'line_suggest\',this.innerHTML);\" ';
					suggest += 'class="suggest_link">' + str[i] + '</div>';
					// ss.innerHTML += suggest;
					vList += suggest;
				}
				ss.style.width="250px";
				ss.innerHTML = '<div  style="z-index:200;position:absolute;border: 1px solid #CCCCCC; font-size:10pt;width:248px">' + vList + '</DIV>';
			}
		} else {
			document.getElementById('line_suggest').innerHTML = '';
		}
	}
}*/
function handleLineSuggest(){
	var str = document.getElementById('trsWordSearch').value;
	// 去掉字符串的左边空格
	str = ltrim(str);
	if (searchReq.readyState == 4) {
		if (str != "") {
			var ss = document.getElementById('search_suggest');
			ss.innerHTML = '';
			ss.style.display="block";
			// 从服务器得到的值
			if (searchReq.responseText != "") { 
				//alert("0000");
				var str = searchReq.responseText.split("\n");//对"\n"进行分割
				// 查询出的结果的列表
				//alert(str.length);
				var vList = ""; 
				for (i = 0; i < str.length - 1; i++) {
					var s = str[i];
					//alert("1111");
					//alert("str[i]" + s);
					// Build our element string. This is cleaner using the
					// DOM,but IE doesn't support dynamically added attributes.
					var suggest = '<div onmouseover="suggestOver(this);" ';
					suggest += 'onmouseout="suggestOut(this);" ';
					suggest += 'onclick=\"setSearch(\'trsWordSearch\',\'search_suggest\',this.innerHTML);\" ';
					suggest += 'class="suggest_link">' + s + '</div>';
					// ss.innerHTML += suggest;
					vList += suggest;
					
				}
				ss.style.width="250px";
				ss.innerHTML = '<div id="suggestList" style="z-index:200;position:absolute;border: 1px solid #CCCCCC; font-size:10pt;width:350px;float:left;">' + vList + '</DIV>';
				//alert("vList" + ss.innerHTML);
			}
			//alert("2222");
		} else {
			//alert("3333");
			document.getElementById('search_suggest').innerHTML = '';
		}
		//alert("4444");
	}
}

function handleInfoStartSuggest(){
	var str = document.getElementById('startPlace').value;
	// 去掉字符串的左边空格
	str = ltrim(str);
	if (searchReq.readyState == 4) {
		if (str != "") {
			var ss = document.getElementById('infoPoint_suggest');
			ss.innerHTML = '';
			// 从服务器得到的值
			if (searchReq.responseText != "") { 
				var str = searchReq.responseText.split("\n");//对"\n"进行分割
				// 查询出的结果的列表
				var vList = ""; 
				for (i = 0; i < str.length - 1; i++) {
					// Build our element string. This is cleaner using the
					// DOM,but IE doesn't support dynamically added attributes.
					var suggest = '<div onmouseover="suggestOver(this);" ';
					suggest += 'onmouseout="suggestOut(this);" ';
					suggest += 'onclick=\"setSearch(\'startPlace\',\'infoPoint_suggest\',this.innerHTML);\" ';
					suggest += 'class="suggest_link">' + str[i] + '</div>';
					// ss.innerHTML += suggest;
					vList += suggest;
				}
				ss.style.width="250px";
				ss.innerHTML = '<div  style="z-index:200;position:absolute;border: 1px solid #CCCCCC; font-size:10pt;width:280px">' + vList + '</DIV>';
			}
		} else {
			document.getElementById('infoPoint_suggest').innerHTML = '';
		}
	}
}

function handleInfoEndSuggest(){
	var str = document.getElementById('endPlace').value;
	// 去掉字符串的左边空格
	str = ltrim(str);
	if (searchReq.readyState == 4) {
		if (str != "") {
			var ss = document.getElementById('infoPoint_suggest');
			ss.innerHTML = '';
			// 从服务器得到的值
			if (searchReq.responseText != "") { 
				var str = searchReq.responseText.split("\n");//对"\n"进行分割
				// 查询出的结果的列表
				var vList = ""; 
				for (i = 0; i < str.length - 1; i++) {
					// Build our element string. This is cleaner using the
					// DOM,but IE doesn't support dynamically added attributes.
					var suggest = '<div onmouseover="suggestOver(this);" ';
					suggest += 'onmouseout="suggestOut(this);" ';
					suggest += 'onclick=\"setSearch(\'endPlace\',\'infoPoint_suggest\',this.innerHTML);\" ';
					suggest += 'class="suggest_link">' + str[i] + '</div>';
					// ss.innerHTML += suggest;
					vList += suggest;
				}
				ss.style.width="250px";
				ss.innerHTML = '<div  style="z-index:200;position:absolute;border: 1px solid #CCCCCC; font-size:10pt;width:280px">' + vList + '</DIV>';
			}
		} else {
			document.getElementById('infoPoint_suggest').innerHTML = '';
		}
	}
}

// Mouse over function
function suggestOver(div_value) {
	div_value.className = 'suggest_link_over';
}
// Mouse out function
function suggestOut(div_value) {
	div_value.className = 'suggest_link';
}
// Click function
function setSearch(inputID,suggestID,value) {
	document.getElementById(inputID).value = value;
	document.getElementById(suggestID).innerHTML = '';
}
//全文检索中得到选中的值
function setTrsSearch(value) {
	document.getElementById('trsWordSearch').value = value;
	var ss=document.getElementById('search_suggest');
	ss.innerHTML = '';
	ss.style.display="none";
}
//全文检索中下拉框关闭
function trsAjaxClose(){
	
	var ss=document.getElementById('search_suggest');
	ss.innerHTML = '';
	ss.style.display="none";
}



// 去左空格;
function ltrim(s) {
	return s.replace(/^\s*/, "");
}
// 去右空格;
function rtrim(s) {
	return s.replace(/\s*$/, "");
}
// 去左右空格;
function trim(s) {
	return rtrim(ltrim(s));
}


