function getSelectionText(){
	var str="";
	if (document.getSelection) {
    str = document.getSelection();
  } else if (document.selection && document.selection.createRange) {
    var range = document.selection.createRange();
    str = range.text;
  }
  return str;
}

function validinput(){
   //var re = new RegExp(/^\d*(\.)?\d*$/,"ig");
   var allEle = document.all;
   for(i=0;i<allEle.length;i++){
   	if(allEle[i].tagName.toLowerCase() == "input"&&allEle[i].type.toLowerCase()=="text"){
   		tmp=allEle[i].value;
   		if (isNaN(tmp)){
   			allEle[i].select();
   			throw "输入域中存在非法数字";
   		}
   		if(allEle[i].getAttribute("required")=="true"){
   			//var html=allEle[i].outerHTML;
   			var title=allEle[i].getAttribute("title");
   			if(allEle[i].value==""&&!allEle[i].disabled){
   				alert(title+"不能为空");
  				allEle[i].focus();
  				throw title+"不能为空";
  			}
   		}
   	}
   }
}

//数字校验方式，48表示0，57表示9,46表示小数点.43表示+,45表示-
function verifyNumber(){
	var keyCode=window.event.keyCode;
	if(!((keyCode>47&&keyCode<58)||keyCode==46||keyCode==43||keyCode==45)){
		window.event.keyCode=0;
		return false;
	}
	return true;
}

function filterKeyPress(className){
	var obj=window.event.srcElement;
	if(obj.tagName.toLowerCase()=="input"&&obj.className==className&&obj.type.toLowerCase()=="text"){
		verifyNumber();
	}
}

function formatnum(){
	if(window.event.srcElement.tagName.toLowerCase()=="input"&&window.event.srcElement.type.toLowerCase()=="text"){
		var val=window.event.srcElement.value;
		alert(val);
		window.event.srcElement.value=formatNumber(val,'#,###.###');
	}
}

function trim(str) {								//滤去字符串中的空格
	str = str + "";
	return str.replace(/^\s*|\s*$/g,"");
}

function GetScriptEngineInfo(){
   var s;
   s = ""; // 根据必要的信息创建字符串。
   s += ScriptEngine() + " Version ";
   s += ScriptEngineMajorVersion() + ".";
   s += ScriptEngineMinorVersion() + ".";
   s += ScriptEngineBuildVersion();
   return(s);
}

function formatNumber(number,pattern){
	var str	= number.toString();
	var strInt;
	var strFloat;
	var formatInt;
	var formatFloat;
	if(/\./g.test(pattern))	{
		formatInt		= pattern.split('.')[0];
		formatFloat		= pattern.split('.')[1];
	}else{
		formatInt		= pattern;
		formatFloat		= null;
	}
	
		if(/\./g.test(str)){
			if(formatFloat!=null){
				var tempFloat	= Math.round(parseFloat('0.'+str.split('.')[1])*Math.pow(10,formatFloat.length))/Math.pow(10,formatFloat.length);
				strInt		= (Math.floor(number)+Math.floor(tempFloat)).toString();				
				strFloat	= /\./g.test(tempFloat.toString())?tempFloat.toString().split('.')[1]:'0';			
			}else{
				strInt		= Math.round(number).toString();
				strFloat	= '0';
			}
		}
		else{
			strInt		= str;
			strFloat	= '0';
		}
		if(formatInt!=null){
			var outputInt	= '';
			var zero		= formatInt.match(/0*$/)[0].length;
			var comma		= null;
			if(/,/g.test(formatInt)){
				comma		= formatInt.match(/,[^,]*/)[0].length-1;
			}
			var newReg		= new RegExp('(\\d{'+comma+'})','g');

			if(strInt.length<zero){
				outputInt		= new Array(zero+1).join('0')+strInt;
				outputInt		= outputInt.substr(outputInt.length-zero,zero)
			}
			else{
				outputInt		= strInt;
			}

			var 
			outputInt			= outputInt.substr(0,outputInt.length%comma)+outputInt.substring(outputInt.length%comma).replace(newReg,(comma!=null?',':'')+'$1')
			outputInt			= outputInt.replace(/^,/,'');

			strInt	= outputInt;
		}

		if(formatFloat!=null){
			var outputFloat	= '';
			var zero		= formatFloat.match(/^0*/)[0].length;

			if(strFloat.length<zero)
			{
				outputFloat		= strFloat+new Array(zero+1).join('0');
				//outputFloat		= outputFloat.substring(0,formatFloat.length);
				var outputFloat1	= outputFloat.substring(0,zero);
				var outputFloat2	= outputFloat.substring(zero,formatFloat.length);
				outputFloat		= outputFloat1+outputFloat2.replace(/0*$/,'');
			}
			else
			{
				outputFloat		= strFloat.substring(0,formatFloat.length);
			}

			strFloat	= outputFloat;
		}
		else
		{
			if(pattern!='' || (pattern=='' && strFloat=='0'))
			{
				strFloat	= '';
			}
		}

		return strInt+(strFloat==''?'':'.'+strFloat);
	}
	/*alert(formatNumber(0,''));
	alert(formatNumber(12432.21,'#,###'));
	alert(formatNumber(12432.21,'#,###.000#'));
	alert(formatNumber(12432,'#,###.00'));
	alert(formatNumber(12432.419,'#,###.0#'));*/
function openwin(url){
	window.open(url,"","status=yes;toolbar=no,menubar=no,scrollbar=yes,width=500,height=300");
}

function openwin(url,w,h){
	window.open(url,"","status=no,toolbar=no,menubar=no,scrollbars=yes,width="+w+",height="+h);
}

function AddOption(obj,value,display){				//在一个select中添加某个值
	var aOption;
	aOption = document.createElement("OPTION");
	aOption.value = value;
	aOption.text = display;
	if (obj.tagName != null && obj.tagName.toLowerCase() == "select") {
		obj.add(aOption);
	}else if (document.all[obj].tagName.toLowerCase() == "select") {
		document.all[obj].add(aOption);
	}
}

function selectAllItems(objname){
   var obj=document.all[objname].options;
   for(i=0;i<obj.length;i++){
       obj[i].selected=true;
   }
}

function RemoveOption(obj,value){					//在一个select中删除某个值
	var elem;
	if (obj.tagName != null && obj.tagName.toLowerCase() == "select") {
		elem = obj;
	} else if (document.all[obj].tagName.toLowerCase() == "select"){
		elem = document.all[obj];
	}
	if (elem.tagName.toLowerCase() == "select"){ 
		var i = 0;
		for (i=0;i<elem.options.length;i++)
		{
			if (elem.options[i].value == value)
			{
				elem.remove(i);
				break;
			}
		}
	}
}

function filterSmallClass(obj1,obj2,obj3){
				  var com=document.all[obj1];
				  var prod1=document.all[obj2].options;
				  var prod2=document.all[obj3].options;
				  RemoveAllOption(obj2);
				  comv=com.value;
				         for(i=0;i<prod2.length;i++){
				                prodv=prod2[i].value;
				                prodt=prod2[i].text;
							         	pos=prodv.indexOf("&");
							         	str=prodv.substring(0,pos);
							         	if(str==comv){
							         		str1=prodv.substring(pos+1);
							         		aOption=document.createElement("option");
							         		aOption.value=str1;
							         		aOption.text=prodt;
							         		prod1.add(aOption);
							         	}
				    } 
	}  

function RemoveAllOption(obj){
	var elem=document.all[obj];
	if(elem.options!=null){
		for (i=elem.options.length;i>0;i--){
			elem.remove(i);
		}
	}
}


/**
用于交易所的数据比较，通过比较当日数据和前一交易日数据来获的上榜退榜数据
上交所，大教所表格列数为12，郑交所列数为10
*/
function buildCompareResult(){
	try{
  var tt=document.getElementById("todaydata");
   var to=document.getElementById("lastdata");
   
   if(to==null) return;
   var tr=document.getElementById("resultdata");
   
   var rowlen1=tt.rows.length;
   var rowlen2=to.rows.length;
   var added_company1="";  //新增单位
   var disappeared_company1="";  //退榜单位
   var added_company2="";  //新增单位
   var disappeared_company2="";  //退榜单位
   var added_company3="";  //新增单位
   var disappeared_company3="";  //退榜单位
    
   if(rowlen1<=2||rowlen2<=2) return;
   var t_cols1=new Array(rowlen1-2);
   var t_cols2=new Array(rowlen2-2);
   var t_cols11=new Array(rowlen1-2);
   var t_cols22=new Array(rowlen2-2);
   var t_cols111=new Array(rowlen1-2);
   var t_cols222=new Array(rowlen2-2);
   
   for(var i=1;i<rowlen1-1;i++){
       var obj=tt.rows[i].cells;
       
       if(obj.length>10){
	       if(obj[1].innerText!=null){
	       	t_cols1[i-1]=new Array(obj[1].innerText,obj[2].innerText);
	       }
	       if(obj[5].innerText!=null){
	       	t_cols11[i-1]=new Array(obj[5].innerText,obj[6].innerText);
	       }
	       if(obj[9].innerText!=null){
	        t_cols111[i-1]=new Array(obj[9].innerText,obj[10].innerText);
	       }
       }else{
       	       if(obj[1].innerText!=null){
	       	t_cols1[i-1]=new Array(obj[1].innerText,obj[2].innerText);
	       }
	       if(obj[4].innerText!=null){
	       	t_cols11[i-1]=new Array(obj[4].innerText,obj[5].innerText);
	       }
	       if(obj[7].innerText!=null){
	        t_cols111[i-1]=new Array(obj[7].innerText,obj[8].innerText);
	       }
       }
   }
   for(var i=1;i<rowlen2-1;i++){
       var obj=to.rows[i].cells;
       if(obj.length>10){
	       if(obj[1].innerText!=null&&obj[2].innerText!=null){
	        t_cols2[i-1]=new Array(obj[1].innerText,obj[2].innerText);
	       }
	       if(obj[5].innerText!=null&&obj[6].innerText!=null){
	        t_cols22[i-1]=new Array(obj[5].innerText,obj[6].innerText);
	       }
	       if(obj[9].innerText!=null&&obj[10].innerText!=null){
	        t_cols222[i-1]=new Array(obj[9].innerText,obj[10].innerText);
	       }
       }else{
       	       if(obj[1].innerText!=null&&obj[2].innerText!=null){
	        t_cols2[i-1]=new Array(obj[1].innerText,obj[2].innerText);
	       }
	       if(obj[4].innerText!=null&&obj[5].innerText!=null){
	        t_cols22[i-1]=new Array(obj[4].innerText,obj[5].innerText);
	       }
	       if(obj[7].innerText!=null&&obj[8].innerText!=null){
	        t_cols222[i-1]=new Array(obj[7].innerText,obj[8].innerText);
	       }
       }
   }
   for(var i=0;i<rowlen1-2;i++){
   	 var added1=new Boolean(true);  //新增单位，初始值为true
   	 var added2=new Boolean(true);  //新增单位，初始值为true
   	 var added3=new Boolean(true);  //新增单位，初始值为true
   	 for(var j=0;j<rowlen2-2;j++){
   	 	if(t_cols1[i][0]==t_cols2[j][0]) added1=false;
   	 	if(t_cols11[i][0]==t_cols22[j][0]) added2=false;
   	 	if(t_cols111[i][0]==t_cols222[j][0]) added3=false;
   	 }
   	 if(added1) added_company1+=t_cols1[i][0]+" "+t_cols1[i][1]+"<br>";
   	 if(added2) added_company2+=t_cols11[i][0]+" "+t_cols11[i][1]+"<br>";
   	 if(added3) added_company3+=t_cols111[i][0]+" "+t_cols111[i][1]+"<br>";
   }
   for(var i=0;i<rowlen2-2;i++){
   	 var disappeared1=new Boolean(true);  //退榜单位，初始值为false
   	 var disappeared2=new Boolean(true);  //退榜单位，初始值为true
   	 var disappeared3=new Boolean(true);  //退榜单位，初始值为true
   	 for(var j=0;j<rowlen1-2;j++){
   	 	if(t_cols1[j][0]==t_cols2[i][0]) disappeared1=false;
   	 	if(t_cols11[j][0]==t_cols22[i][0]) disappeared2=false;
   	 	if(t_cols111[j][0]==t_cols222[i][0]) disappeared3=false;
   	 }
   	 if(disappeared1) disappeared_company1+=t_cols2[i][0]+" "+t_cols2[i][1]+"<br>";
   	 if(disappeared2) disappeared_company2+=t_cols22[i][0]+" "+t_cols22[i][1]+"<br>";
   	 if(disappeared3) disappeared_company3+=t_cols222[i][0]+" "+t_cols222[i][1]+"<br>";
   }
   
   tr.rows[1].cells[0].innerHTML=added_company1;
   tr.rows[1].cells[1].innerHTML=disappeared_company1;
   tr.rows[1].cells[2].innerHTML=added_company2;
   tr.rows[1].cells[3].innerHTML=disappeared_company2;
   tr.rows[1].cells[4].innerHTML=added_company3;
   tr.rows[1].cells[5].innerHTML=disappeared_company3;
  }catch(Ex){alert(Ex);}
}

function swapimage(obj){
   if(obj.src.indexOf("plus.gif")!=-1){
       obj.src="/pic1/blank.gif";
   }else{
       obj.src="/pic1/plus.gif";
   }
}
function swapdisplay(name){
     var obj=document.getElementById(name);
     if (obj==null) return;
     if(obj.style.display=="none"){
         obj.style.display="block";
     }else{
         obj.style.display="none";
     }
}

