网上的代码段是选择省份的联动,但是大家选择省份还是多半用ajax,我这里用的是选择日期。
<script type="text/javascript">function menu(array)
{
//数组,联动的数据源
this.array=array;
this.indexName='';
this.obj='';
//设置子SELECT
// 参数:当前onchange的SELECT ID,要设置的SELECT ID
this.subSelectChange=function(selectName1,selectName2)
{
var obj1=document.all[selectName1];
var obj2=document.all[selectName2];
var objName=this.toString();
var me=this;
obj1.οnchange=function(){
me.optionChange(this.options[this.selectedIndex].value,obj2.id)
}
}
//设置第一个SELECT
// 参数:indexName指选中项,selectName指select的ID
this.firstSelectChange=function(indexName,selectName)
{
this.obj=document.all[selectName];
this.indexName=indexName;
this.optionChange(this.indexName,this.obj.id)
}
// indexName指选中项,selectName指select的ID
this.optionChange=function (indexName,selectName)
{
var obj1=document.all[selectName];
var me=this;
obj1.length=0;
obj1.options[0]=new Option("请选择");
for(var i=0;i<this.array.length;i++)
{
if(this.array[i][1]==indexName)
{
//alert(this.array[i][1]+" "+indexName);
obj1.options[obj1.length]=new Option(this.array[i][2],this.array[i][0]);
}
}
}
}
var array=new Array();
array[0]=new Array("2013","year","2013"); // ID,父级ID,名称
array[1]=new Array("Jan.","2013","Jan.");
array[2]=new Array("Feb.","2013","Feb.");
array[3]=new Array("Mar.","2013","Mar.");
array[4]=new Array("Apr.","2013","Apr.");
array[5]=new Array("May.","2013","May.");
array[6]=new Array("Jun.","2013","Jun.");
array[7]=new Array("Jul.","2013","Jul.");
array[8]=new Array("Aug.","2013","Aug.");
array[9]=new Array("Sep.","2013","Sep.");
array[10]=new Array("Oct.","2013","Oct.");
array[11]=new Array("Nov.","2013","Nov.");
array[12]=new Array("Dec.","2013","Dec.");
array[13]=new Array("2012","year","2012");
array[14]=new Array("1","Jan.","1");
array[15]=new Array("2","Jan.","2");
array[16]=new Array("3","Jan.","3");
array[17]=new Array("4","Jan.","4");
array[18]=new Array("5","Jan.","5");
array[19]=new Array("6","Jan.","6");
//调用
var liandong=new menu(array) //设置数据源
liandong.firstSelectChange("year","year"); //设置第一个选择框
liandong.subSelectChange("year","month"); //设置子级选择框
liandong.subSelectChange("month","date");
</script>