﻿
function pintdiv(wd)
{
    if(wd.length<=0) wd="158px";
    if(document.getElementById("_smanDisp")==null)
    {
    var divstr = "<div id='_smanDisp' style='width: "+wd+"px; position: absolute; z-index: 40008; display: none;background: #FFFFFF; border: 1px solid #cccccc; font-size: 12px; cursor: default;color: #3E7699; padding: 2px 4px 2px 4px; line-height: 140%'></div>";
    document.write(divstr);
    }
}
var lifeild=['pm_','cz_','gg_','cd_','dwmc','ckmc_','dqmc'];
var lifeildids=['txtpm','txtcz','txtgg','txtcd','ctl00_ST_SelectInput1_txt1','txtck','txtdqmc'];
var url="../UserControls/GetCombo.ashx?fs=array&limit=10";

function AjaxSelect(obj,fieldindex,defquery,defsort,other){
    selectPubClnt(obj.id,1,'',fieldindex,'','',defquery,defsort,other);
}
//parm1 字段
//parm2 查询字段
//parm3 字段ids
//parm4 默认条件
//parm5 默认排序
//parm6 其他
        
function selectPubClnt(id,page,action,parm1,parm2,parm3,parm4,parm5,parm6) 
{
	if (parm1==undefined)parm1="";
	if (parm2==undefined)parm2="";
	if (parm3==undefined)parm3="";
	if (parm4==undefined)parm4="";
	if (parm5==undefined)parm5="";
	if (parm6==undefined)parm6="";
	
	var objouter = document.getElementById("_smanDisp");
	var objInput = document.getElementById(id);
	
	var selectedIndex = -1;
	var intTmp;
	
	function checkKeyCode(e) {
		if (true) {
			var keyCode = window.event ? event.keyCode:e.which;
			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;
	
	if(parseInt(page)>=1) checkAndShow();
	objInput.onblur = onElenBlur;
	function onElenBlur(e)
	{
	    if($.browser.mozilla) 
	    if(e["explicitOriginalTarget"])
	            if(e.explicitOriginalTarget.parentNode)
	                if(e.explicitOriginalTarget.parentNode.tagName=="A")
	                         return ;
        if($.browser.msie)
	        if(document.activeElement.parentElement)
	            if(document.activeElement.parentElement.parentElement)
		            if (document.activeElement.parentElement.parentElement.id=="_smanDisp")return;
		closeDivPage();
	}
	
	objInput.onfocus = function focusFun()
	{
	    page="1";
		objInput.select();
		//checkAndShow();
		objInput.focus();
	}
try{
        HTMLElement.prototype.__defineGetter__
        (
        "innerText",
        function ()
        {
            var anyString = "";
            var childS = this.childNodes;
            for(var i=0; i<childS.length; i++)
            {
                if(childS[i].nodeType==1)
                    anyString += childS[i].tagName=="BR" ? '"n' : childS[i].innerText;
                else if(childS[i].nodeType==3)
                    anyString += childS[i].nodeValue;
            }
            return anyString;
        }
    ); 
}
catch(e){}	
	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=''\" onmousedown=\"selectVal(this.innerText,'"+ids+"','"+ id + "',this)\">" + v + "</div>"
		}
				
		function addSplitPage(pageno,pages,allcount){
			var pagetext = "";
			if(parseInt(pageno)>1){
			    pagetext +="<a id='a1' href=\"javascript:shownextPage('"+id+"','"+(parseInt(pageno)-1)+"','"+action+"','"+parm1+"','"+parm2+"','"+parm3+"','"+parm4+"','"+parm5+"','"+parm6+"');\">上一页</a> ";
			}
			pagetext += pageno+"/"+pages+"页 共"+allcount+"条 ";
			if(parseInt(pageno)<parseInt(pages)){
			   pagetext +="<a id='a2' href=\"javascript:shownextPage('"+id+"','"+(parseInt(pageno)+1)+"','"+action+"','"+parm1+"','"+parm2+"','"+parm3+"','"+parm4+"','"+parm5+"','"+parm6+"');\">下一页</a>";
			}
                 
		   objouter.innerHTML += "<div align=center id=''  >"+pagetext+"</div>"; 
		}
		divPosition();
		selectedIndex = -1;
		var parms = [strInput,page];
		if (parm1!=undefined&&parm1!="")
		{
			parms = [strInput,page,parm1];
			if (parm2!=undefined&&parm2!="")
			{
				parms = [strInput,page,parm1,parm2];
				if (parm3!=undefined&&parm3!="")
				{
					parms = [strInput,page,parm1,parm2,parm3];
					if (parm4!=undefined&&parm4!="")
					{
						parms = [strInput,page,parm1,parm2,parm3,parm4];
						if (parm5!=undefined&&parm5!="")
						{
							parms = [strInput,page,parm1,parm2,parm3,parm4,parm5];
							if (parm6!=undefined&&parm6!="")
						    {
							    parms = [strInput,page,parm1,parm2,parm3,parm4,parm5,parm6];
    							
						    }
						}
					}
				}
			}
		}
	    PmSelectLists(page,parm1,parm2,parm3,parm4,parm5,parm6,strInput,objouter);		      
        function PmSelectLists(page,parm1,parm2,parm3,parm4,parm5,parm6,strInput,objouter){   
        //parm1 检索字段
        //parm2 字段
        //parm3 字段ids
        //parm4 默认条件
        //parm5 默认排序
        //parm6 其他     
        var qfield= lifeild.slice(0); 
        var qquery=lifeildids.slice(0); 
         qfield.splice(parm1,1);
         qquery.splice(parm1,1);
        for(var i=0;i<qquery.length;i++){
            var obj=document.getElementById(qquery[i]);
            if(obj)
                qquery[i]=obj.value;
            else
                qquery[i]='';
        }
            $.ajax({
              type: "POST",
              data:{page:page,field:lifeild[parm1],qfield:qfield,qquery:qquery,query:strInput,defquery:parm4,sort:parm5,query:strInput},
              url: url,
              success: function(html){
                   Setre(strInput,objouter,eval(html));
              },
              dataType: "html"
            });
        }
    function Setre(strInput,objouter,re)	{
      objouter.innerHTML = "";
	  objouter.innerHTML += "<div align=right style='height:12px' id='' style='font-size:12px'><a href=javascript:closeDivPage()> 关闭 </a></div>";
	
                          var allpage = re[1][0];//所有页
					      var pageno = re[1][1];//本页
                          var allcount = re[1][2];//记录条数
				          for (intTmp = 0; intTmp < re[0].length; intTmp++) 
				          { 
					     	    addOption(re[0][intTmp], "", strInput.toUpperCase(), re[0][intTmp]);
			 	          }
    			 	     
				          //加入分页
				         addSplitPage(parseInt(pageno),parseInt(allpage),parseInt(allcount));
				         objouter.style.display = '';
    };
    				      
				      
				   

}

	function divPosition() {
	
	    var objouter = document.getElementById("_smanDisp");
		objouter.style.top = getAbsoluteHeight(objInput)
				+ getAbsoluteTop(objInput)+"px";
		objouter.style.left = getAbsoluteLeft(objInput)+"px";;
	}

	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);
	}
}

//点击内容取值
function selectVal(str, name, ids,obj){

	doGetPubClntSelectValue(str, name, ids);
	//if (document.activeElement.id=="_smanDisp")
	closeDivPage();
}
function doGetPubClntSelectValue(str, name, ids)
{
	document.getElementById(ids).value = RTrim(str);
	return true;
}
//关闭下拉框 
function closeDivPage()
{
	var objouter = document.getElementById("_smanDisp");
	objouter.style.display = 'none';
}
function shownextPage(obj,pid,action,parm1,parm2,parm3,parm4,parm5,parm6)
{
	selectPubClnt(obj,pid,action,parm1,parm2,parm3,parm4,parm5,parm6);
}

function getAbsoluteHeight(ob){
	return ob.offsetHeight
}
function getAbsoluteWidth(ob){
	return ob.offsetWidth
}
function getAbsoluteLeft(ob){
	var s_el=0;
	el=ob;
	while(el){
		s_el=s_el+el.offsetLeft;
		el=el.offsetParent;
	}
	;
	return s_el
}
function getAbsoluteTop(ob){
	var s_el=0;
	el=ob;
	while(el){
		s_el=s_el+el.offsetTop;
		el=el.offsetParent;
	}
	;
	return s_el
}
function $N(){
	return document.getElementsByName(arguments[0]);
}
function $T(){ // $T('input','box')
	if(arguments.length==1){
		return document.getElementsByTagName(arguments[0]);
	}else if(arguments.length==2){
		if(typeof(arguments[1])=="object"){
			return arguments[1].getElementsByTagName(arguments[0]);
		}else{
			return $(arguments[1]).getElementsByTagName(arguments[0]);
		}
	}
}
function RTrim(_str){
	var whitespace=new String(" \t\n\r");
	var s=new String(_str);
	if(whitespace.indexOf(s.charAt(s.length-1))!=-1){
		var i=s.length-1;
		while(i>=0&&whitespace.indexOf(s.charAt(i))!=-1){
			i--;
		}
		s=s.substring(0,i+1);
	}
	return s.toString();
}
