霰弹枪扼流器:哪位高手有空看看我的javascript代码?

来源:百度文库 编辑:高考问答 时间:2024/04/28 04:33:32
我的是html调用.js文件。就是创建两个选择菜单,我想把其中的两个选择菜单改成多级的。就是其中一个选择大类,选择了以后,另一个会出现相应的小类。就像选择地理位置一样,一个选省份,选了以后另一个里面的选项就相应的是选择省份里的城市。我这个代码是.js文件里的一部分,还是有点长,各位有劳了,剩下的分数全给出来了。谢谢了
function loadMapForm1() {
var Win1;
if ((useExternalWindow) || (!useTextFrame)) {
Win1 = window.open("","LoadWindow","width=550,height=100,scrollbars=yes,resizable=yes");
} else {
Win1 = parent.TextFrame;
Win1.document.open();
}
Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title>Load MapService</title>');
Win1.document.writeln('</head>');
Win1.document.writeln('<body bgcolor="black" topmargin=0 leftmargin=0 rightmargin=0 text="Black" onload="window.focus()">');
Win1.document.writeln('<div align="center"><form onsubmit="javascipt:loadIt();return false;">');
Win1.document.writeln('<table width=100% cellpadding="2" cellspacing="2">');
Win1.document.writeln(' <tr><td bgcolor="' + textFrameBackColor + '" align="center" colspan=3><font face="Arial" size="-1"><b>Load MapService</b></font></td></tr>');
Win1.document.writeln('<tr><td bgcolor="' + textFrameBackColor + '" align="center"><font face="Arial" size="-2">Main Map:');
Win1.document.writeln(' <select name="theValue">');
for (var i=0;i<serviceCount;i++) {
Win1.document.writeln('<option value="' + ServiceName[i] + '">' + ServiceName[i] + '</option>');
}
Win1.document.writeln(' </select>');
Win1.document.writeln('</td>');
Win1.document.writeln(' <td bgcolor="' + textFrameBackColor + '" align="center"><font face="Arial" size="-2">Overview Map:<select name="theOVValue">');
for (var i=0;i<serviceCount;i++) {
Win1.document.writeln('<option value="' + ServiceName[i] + '">' + ServiceName[i] + '</option>');
}
Win1.document.writeln(' </select>');

Win1.document.writeln('</td>');
Win1.document.write('<td bgcolor="' + textFrameBackColor + '" align="center"><font face="Arial" size="-2"> <input type="Checkbox" name="putOV" value="yes"');
if (hasOVMap) Win1.document.write(' checked');
Win1.document.writeln('>Use Overview Map</td>');
Win1.document.write('</tr><tr><td align="center" bgcolor="' + textFrameBackColor + '" colspan=3>');

Win1.document.write('</tr></table></form></div></body></html>');
Win1.document.close();
Win1=null;

}

不就是级联菜单吗,这里有个

<html>
<script>
<!--
//级联选择
function linkSelect1(zhi,wen)
{
var prog=new Array();
prog[1]=new Array();
prog[2]=new Array();
prog[1][0]="请选择";
prog[1][1]="专科生";
prog[1][2]="本科生";
prog[2][0]="请选择";
prog[2][1]="专科生";
prog[2][2]="本科生";
prog[2][3]="硕士生";

wen.options.length=0;
form1.select3.options.length=0;
for(var i=1;i<zhi.length;i++)
{
if(zhi.options[i].selected)
{
for(var j=0;j<prog[i].length;j++)
{
wen.options[j]= new Option(prog[i][j],prog[i][j]);
}
}

}
}

function linkSelect2(wen,loca)
{
var prog=new Array();
prog[1]=new Array();
prog[2]=new Array();
prog[1][0]="请选择";
prog[1][1]="北京";
prog[1][2]="辽宁";
prog[2][0]="请选择";
prog[2][1]="香港";
prog[2][2]="澳门";
prog[2][2]="台湾";
loca.options.length=0;
for(var i=1;i<wen.length;i++)
{
if(wen.options[i].selected)
{
for(var j=0;j<prog[i].length;j++)
{
loca.options[j]= new Option(prog[i][j],prog[i][j]);
}
}
}
}
-->
</script>
<body>
<form name="form1">
职称:<select name="select1" onChange="linkSelect1(document.form1.select1,document.form1.select2)">
<option value="0">请选择</option>
<option value="1">初级程序员</option>
<option value="2">高级程序员</option>
</select>
<br>
文化程度:<select name="select2" onChange="linkSelect2(document.form1.select2,document.form1.select3)">
</select>
<br>
所在地区:
<select name="select3">
</select>
</form>
</body>
</html>

你用dreamweaver,图形化界面生成你要的代码,无限多级子菜单。

这样又是何别,浪费代码:)