/*
 * Written by chirs@zhoujin.com 2007-04-08
 * 
 */
function selectPubClnt(id,page) {
	var objouter = $("_smanDisp");
	var objInput = $(id);
	var selectedIndex = -1;
	var intTmp;
	//objInput.onblur = function() {
	//	objouter.style.display = 'none';
	//}
	//window.onfocus = function() {
	//	objouter.style.display = 'none';
	//}
	function checkKeyCode() {
		if ((document.all) ? true : false) {
			var keyCode = event.keyCode
			if (keyCode == 40 || keyCode == 38) { // 下上
				var isUp = false
				if (keyCode == 40) {
					isUp = true;
				}
				chageSelection(isUp)
			} else if (keyCode == 13) {// 回车
				outSelection(selectedIndex-1, id);
			} else {
				checkAndShow()
			}
		} else {
			checkAndShow()
		}
		divPosition()
	}
	objInput.onkeyup = checkKeyCode;
	objInput.onkeydown = checkKeyCode;
	objInput.onClick = function(){ alert("onclick");objInput.select();  }
	if(parseInt(page)>=1)
		  checkAndShow();
	objInput.onfocus = function focusFun(){
	    page="1";
		objInput.select();
		checkAndShow();
	}
	function checkAndShow() {
		var strInput = objInput.value
		function addOption(value, value1, keyw, ids) {
			var v = value.replace(keyw, "<b><font color=red>" + keyw
					+ "</font></b>");
			v = v + value1;
			objouter.innerHTML += "<div align=left onmouseover=this.className='sman_selectedStyle' onmouseout=this.className='' id="
					+ ids
					+ " onmousedown=selectVal(this.innerText,this.id,'"
					+ id + "')>" + v + "</div>"
		}

		function addSplitPage(pageno,pages,allcount){
			var pagetext = "";
			if(parseInt(pageno)>1){
			    pagetext +="<a href=javascript:shownextPage('"+id+"','"+(parseInt(pageno)-1)+"')>上一页</a>";
			}
			pagetext += " 共"+allcount+"条 ";
			if(parseInt(pageno)<parseInt(pages)){
			   pagetext +="<a href=javascript:shownextPage('"+id+"','"+(parseInt(pageno)+1)+"')>下一页</a>";
			}
                 
		   objouter.innerHTML += "<div align=center id='' >"+pagetext+"</div>"; 
		
		}
       
		divPosition();
		selectedIndex = -1;
		buffalo.remoteCall("springdicBasicServer.getPmList", [strInput,page], function(
					reply) {
				      var re = reply.getResult();
					  var allpage = re[1].allpage;
					  var pageno = re[1].pageNo;
                      var allcount = re[1].allcount;
				      objouter.innerHTML = "";
				      objouter.innerHTML += "<div align=right style='height:12px' id='' ><font size='12'> <a href=javascript:closeDivPage()> 关闭 </a></font> </div>";
				      for (intTmp = 0; intTmp < re[0].length; intTmp++) {
						  //if((intTmp % 2)==0)
						     addOption(re[0][intTmp].mc, "", strInput.toUpperCase(), re[0][intTmp].mc); 
						  //else
							// addOption(re[0][intTmp].mc, "", strInput.toUpperCase(), re[0][intTmp].mc,'#FDFDFD'); 

					     
			 	      }
				      //加入分页
				     addSplitPage(parseInt(pageno),parseInt(allpage),parseInt(allcount));
				     objouter.style.display = '';

		});

	}

	
	function divPosition() {
		objouter.style.top = getAbsoluteHeight(objInput)
				+ getAbsoluteTop(objInput);
		objouter.style.left = getAbsoluteLeft(objInput);
	}


	function chageSelection(isUp) {
		if (objouter.style.display == 'none') {
			objouter.style.display = '';
		} else {
			if (isUp) {
				selectedIndex++
			} else {
				selectedIndex--
			}
		}
		var maxIndex = objouter.children.length - 1;
		if (selectedIndex < 0) {
			selectedIndex = 0
		}
		if (selectedIndex > maxIndex) {
			selectedIndex = maxIndex
		}
		for (intTmp = 0; intTmp <= maxIndex; intTmp++) {
			if (intTmp == selectedIndex-1) {
				objouter.children[intTmp].className = "sman_selectedStyle";
			} else {
				objouter.children[intTmp].className = "";
			}
		}
	}

	function outSelection(Index, id) {
		if (!objouter.children[Index])
			return;
		var str = objouter.children[Index];
		doGetPubClntSelectValue(str.innerText, str.id, id);
		//objouter.style.display = 'none';
	}

}
/*
在具体调用时候实现，因为有多个这个输入框
function shownextPage(obj,pid){
      selectPubClnt(obj,pid);
}
//在具体调用时候统一实现,因为有多个输入框
function selectVal(str, name, ids){
   var objouter = $("_smanDisp");
   doGetPubClntSelectValue(str, name, ids);
   if(doGetPubClntSelectValue(str, name, ids))
	  objouter.style.display = 'none';
  }
function closeDivPage(){
   var objouter = $("_smanDisp");
   objouter.style.display = 'none';
}
*/