给你一个例子:
<Html>
<Head><meta name="GENERATOR" content="网页酷">
<meta name="ProgId" content="网页酷--让您的网页酷起来!">
<Title>双向关联下拉框</Title>
</Head>
<Body>
<!-- 本页网页特效使用《网页酷》编辑制作!-->
<!-- 软件下载地:Zlinsoft工作室--><!-- 网址:http://www.zlinsoft.com-->
<!-- 软件作者:赵琳(ZZ)--><!-- Email:[email protected]>
<form name="doublecombo">
<select name="example" size="1" onChange="redirect(this.options.selectedIndex)">
<option>应用技术开发网站</option>
<option>国内JavaScript技术网站</option>
<option>国外的著名搜索引擎</option>
</select>
<select name="stage2" size="1">
<option value="http://www.zlinsoft.com">网页特效</option>
</select>
<input type="button" name="test" value="Go!"
onClick="go()">
</p>
<script>
<!--
var groups=document.doublecombo.example.options.length
var group=new Array(groups)
for (i=0; i<groups; i++)
group[i]=new Array()
group[0][0]=new Option("网页特效","http://www.zlinsoft")
group[1][0]=new Option("万旭JavaScript仓库","http://www.wanxu.com")
group[1][1]=new Option("JavaScript2000","http://www.javascript2000.com")
group[1][2]=new Option("无忧脚本","http://www.51js.com")
group[2][0]=new Option("Hotbot","http://www.hotbot.com")
group[2][1]=new Option("Infoseek","http://www.infoseek.com")
group[2][2]=new Option("Excite","http://www.excite.com")
group[2][3]=new Option("Lycos","http://www.lycos.com")
var temp=document.doublecombo.stage2
function redirect(x){
for (m=temp.options.length-1;m>0;m--)
temp.options[m]=null
for (i=0;i<group[x].length;i++){
temp.options[i]=new Option(group[x][i].text,group[x][i].value)
}
temp.options[0].selected=true
}
function go(){
location=temp.options[temp.selectedIndex].value
}
//-->
</script>
</form>
</Body>
</Html>
<Html>
<Head><meta name="GENERATOR" content="网页酷">
<meta name="ProgId" content="网页酷--让您的网页酷起来!">
<Title>双向关联下拉框</Title>
</Head>
<Body>
<!-- 本页网页特效使用《网页酷》编辑制作!-->
<!-- 软件下载地:Zlinsoft工作室--><!-- 网址:http://www.zlinsoft.com-->
<!-- 软件作者:赵琳(ZZ)--><!-- Email:[email protected]>
<form name="doublecombo">
<select name="example" size="1" onChange="redirect(this.options.selectedIndex)">
<option>应用技术开发网站</option>
<option>国内JavaScript技术网站</option>
<option>国外的著名搜索引擎</option>
</select>
<select name="stage2" size="1">
<option value="http://www.zlinsoft.com">网页特效</option>
</select>
<input type="button" name="test" value="Go!"
onClick="go()">
</p>
<script>
<!--
var groups=document.doublecombo.example.options.length
var group=new Array(groups)
for (i=0; i<groups; i++)
group[i]=new Array()
group[0][0]=new Option("网页特效","http://www.zlinsoft")
group[1][0]=new Option("万旭JavaScript仓库","http://www.wanxu.com")
group[1][1]=new Option("JavaScript2000","http://www.javascript2000.com")
group[1][2]=new Option("无忧脚本","http://www.51js.com")
group[2][0]=new Option("Hotbot","http://www.hotbot.com")
group[2][1]=new Option("Infoseek","http://www.infoseek.com")
group[2][2]=new Option("Excite","http://www.excite.com")
group[2][3]=new Option("Lycos","http://www.lycos.com")
var temp=document.doublecombo.stage2
function redirect(x){
for (m=temp.options.length-1;m>0;m--)
temp.options[m]=null
for (i=0;i<group[x].length;i++){
temp.options[i]=new Option(group[x][i].text,group[x][i].value)
}
temp.options[0].selected=true
}
function go(){
location=temp.options[temp.selectedIndex].value
}
//-->
</script>
</form>
</Body>
</Html>
我用的是jComboBox控件,添加ActionPerformed事件,在该方法先判断jComboBox1.getSelectedItem().toString()是否变化,若变化了,则先用jComboBox2.removeAllItems()方法删掉下一个相关下拉列表中的原有内容,再用jComboBox2.addItem()方法加入新的内容。
void jComboBox1_actionPerformed(ActionEvent e) {
if(selectedItem != jComboBox1.getSelectedItem().toString()){
selectedItem = jComboBox1.getSelectedItem().toString();
jComboBox2.removeAllItems();
parameterRow1.setString("queryColumn",selectedItem);
queryDataSet1.refresh();
queryDataSet1.open();
rowCount1 = queryDataSet1.getRowCount();
for(int i = 0;i < rowCount1;i++){
jComboBox2.addItem(queryDataSet2.getString("displayColumn"));
queryDataSet1.next();
}
}