//绑定最顶层下拉
function selRelate(dataArr,objName,objNum,defaultText)	//存放选项值的数组，select名称前缀（后缀为顺序数字），select数量，select的第一选项文本
{
	this.dataArr=dataArr;
	this.objName=objName;
	this.objNum=objNum;
	this.defaultText=defaultText;
	this.arrSelID=new Array();

	this.init=function(selID)	//初始化
	{
		this.getSel(selID);		//初始默认选中项
		this.optionCreate();
	}

	this.getSel=function(tmpSelID)	//根据默认选中值，找出该值的各级父类值
	{
		this.arrSelID.length=0;
		if(tmpSelID)
		{
			var k=0;
			for (i=0;i<this.dataArr.length;i++)
			{
				if(this.dataArr[i][0]==tmpSelID)
				{
					this.arrSelID[k++]=this.dataArr[i][0];
					tmpSelID=this.dataArr[i][2];
					i=-1;
				}
				if(tmpSelID<=0) break;
			}
		}
		if(this.arrSelID.length>0)
		{
			this.arrSelID.reverse();
			return true;
		}
		return false;
	}

	this.onChange=function(fid,cid)	//关联
	{
		if(fid<1 || fid>this.objNum  || cid<1 || cid>this.objNum) return false;

		var obj1=document.getElementById(this.objName+fid);
		var obj2=document.getElementById(this.objName+cid);
		
		obj2.options.length=0;
		obj2.options.add(new Option(this.defaultText,""));
		if(obj1.value)
		{
			for (i in this.dataArr)
			{
				if(this.dataArr[i][2]==obj1.value)
				{
					obj2.options.add(new Option(this.dataArr[i][1],this.dataArr[i][0]));
				}
			}
		}
	}

	this.optionCreate=function()
	{
		var obj;
		var obj_id=1;
		var fvalue=fvalue1=0;

		while(obj_id>0 && obj_id<=this.objNum)
		{
			obj=document.getElementById(this.objName+obj_id);
			if(fvalue1 && fvalue1!=fvalue) fvalue=fvalue1;
			obj.options.length=0;
			obj.options.add(new Option(this.defaultText,""));

			if(fvalue || !fvalue && obj_id==1)
			{
				for (i in this.dataArr)
				{
					if(this.dataArr[i][2]==fvalue)
					{
						obj.options.add(new Option(this.dataArr[i][1],this.dataArr[i][0]));
						
						if(this.inArray(this.dataArr[i][0],this.arrSelID))
						{
							obj.options[obj.length-1].selected=true;
							fvalue1=(obj.value?obj.value:0);
						}
					}
				}				
			}
			obj_id++;
		}
	}

	this.inArray=function(value,array)
	{
		for(var i=0;i<array.length;i++)
			if(array[i] == value) return 1;
		return 0;
	}
}
