<html>
<BODY>
<SELECT NAME="s1"><option>需要JavaScript才能正确?示</SELECT>
<SELECT NAME="s2"></SELECT>
<SELECT NAME="s3"></SELECT>
<SELECT NAME="s4"></SELECT>
<SCRIPT LANGUAGE="JavaScript">
<!--
//??框的名字
selector = [ "s1", "s2", "s3", "s4" ];
//???: "名字", "值", 子??
menu = [
"地球","1",
[
"中?","86",
[
"北京","BJ",
[
"--","1",null
],
"四川","SC",
[
"成都","28",null,
"?山","",null,
"攀枝花","",null,
"自?","",null,
"德?","",null,
"??","",null
]
],
"米?","1",
[
"加利福尼?","CA",
[
"?金山","1",null,
"洛杉?","2",null
],
"?盛?","WA",
[
"西雅?","seattle",null
]
]
],
"火星","2",
[
"大?谷","86",
[
"小山丘","BJ",
[
"A地?","28",null,
"B地?","",null,
"C地?","",null
]
]
]
];
function wizz(level)
{
if( level == 0 )
a = menu;
else
{
str = "menu";
for( i=0; i<level; i++ )
str += "[" + (document.all[selector[i]].selectedIndex * 3 + 2) + "]";
a = eval(str);
}
if( a == null ) return;
s = document.all[selector[level]];
i = s.length;
while( i > 0 ) s.options[--i] = null;
while( i < Math.floor(a.length/3) )
s.options[i] = Option( a[i*3], a[i++*3+1] );
s.onchange = Function("wizz(" + (level+1) + ")");
wizz(level+1);
}
wizz(0);
//-->
</SCRIPT>
</BODY>
</HTML>
<BODY>
<SELECT NAME="s1"><option>需要JavaScript才能正确?示</SELECT>
<SELECT NAME="s2"></SELECT>
<SELECT NAME="s3"></SELECT>
<SELECT NAME="s4"></SELECT>
<SCRIPT LANGUAGE="JavaScript">
<!--
//??框的名字
selector = [ "s1", "s2", "s3", "s4" ];
//???: "名字", "值", 子??
menu = [
"地球","1",
[
"中?","86",
[
"北京","BJ",
[
"--","1",null
],
"四川","SC",
[
"成都","28",null,
"?山","",null,
"攀枝花","",null,
"自?","",null,
"德?","",null,
"??","",null
]
],
"米?","1",
[
"加利福尼?","CA",
[
"?金山","1",null,
"洛杉?","2",null
],
"?盛?","WA",
[
"西雅?","seattle",null
]
]
],
"火星","2",
[
"大?谷","86",
[
"小山丘","BJ",
[
"A地?","28",null,
"B地?","",null,
"C地?","",null
]
]
]
];
function wizz(level)
{
if( level == 0 )
a = menu;
else
{
str = "menu";
for( i=0; i<level; i++ )
str += "[" + (document.all[selector[i]].selectedIndex * 3 + 2) + "]";
a = eval(str);
}
if( a == null ) return;
s = document.all[selector[level]];
i = s.length;
while( i > 0 ) s.options[--i] = null;
while( i < Math.floor(a.length/3) )
s.options[i] = Option( a[i*3], a[i++*3+1] );
s.onchange = Function("wizz(" + (level+1) + ")");
wizz(level+1);
}
wizz(0);
//-->
</SCRIPT>
</BODY>
</HTML>
麻烦各位了
<option value=亚洲>亚洲</option>
<option value=欧洲>欧洲</option>
<option value=非洲>非洲</option>
</select><select id="selB">
<option value=中国>中国</option>
<option value=蒙古>蒙古</option>
<option value=法国>法国</option>
<option value=南非>南非</option>
</select>
<script>
function change()
{
document.getElementById("selB").length=0;
var b=new Array();
b[0]=new Array("亚洲","中国")
b[1]=new Array("亚洲","蒙古")
b[2]=new Array("欧洲","法国")
b[3]=new Array("非洲","南非")
for (i=0;i<b.length;i++)
{
if(b[i][0]==document.getElementById("selA").options[document.getElementById("selA").selectedIndex].value)
{document.getElementById("selB").options[document.getElementById("selB").length]=new Option(b[i][1],b[i][1]);}
}
}
</script>
<select onchange=chg(selectedIndex) name=a>
<option>亚洲
<option>欧洲
<option>美洲
</select>
<select name=b onchange="r.value=value">
<option>请选择
</select>
<input name=r id=r>
</form>
<script>
var arr=[["中国","日本","朝鲜","新加坡"],["英国","法国","意大利"],["美国","加拿大","巴西"]]
function chg(i){
with(document.fm.b){
length=0;
for(j=0;j<arr[i].length;j++)
options.add(new Option(arr[i][j],arr[i][j]))
document.fm.r.value=value+document.fm.a.value
}
}
chg(0)
</script>