以下三级关联如何实现,默认是如下全部option都有,但按顺序选择时启用三级关联,当选择"所在部门",则"所在组"进行关联出现(如"部门1"则只出现部门1的3个组),当继续选择"所在组"时,则"负责人1,负责人2,负责人3"都关联对应组的人员(如"部门1-组1"则只出现"部门1-组1"的2名负责人).另外"负责人1,负责人2,负责人3"选择时不能出现相同人.请问以上思路如下实现动态关联? 所在部门:
<select name="DeptID" style="WIDTH:78px">
<option value="" Selected></option>
<option value="BM20">部门1</option>
<option value="BM21">部门2</option>
<option value="BM99">部门3</option>
</select>
所在组:
<select name="ProjectGID" style="WIDTH:78px">
<option value="" Selected></option>
<option value="PG11">部门1-组1</option>
<option value="PG12">部门1-组2</option>
<option value="PG13">部门1-组3</option>
<option value="PG14">部门2-组1</option>
<option value="PG15">部门2-组2</option>
<option value="PG16">部门3-组1</option>
<option value="PG17">部门3-组2</option>
<option value="PG18">部门3-组3</option>
</select>
负责人1<select name="PJChargePerson1">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option>
<option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option>
<option value="5" >部门1-组3-员工1</option>
<option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option>
<option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option>
<option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option>
<option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option>
<option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
负责人2<select name="PJChargePerson2">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option>
<option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option>
<option value="5" >部门1-组3-员工1</option>
<option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option>
<option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option>
<option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option>
<option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option>
<option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
负责人3<select name="PJChargePerson3">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option>
<option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option>
<option value="5" >部门1-组3-员工1</option>
<option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option>
<option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option>
<option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option>
<option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option>
<option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
<select name="DeptID" style="WIDTH:78px">
<option value="" Selected></option>
<option value="BM20">部门1</option>
<option value="BM21">部门2</option>
<option value="BM99">部门3</option>
</select>
所在组:
<select name="ProjectGID" style="WIDTH:78px">
<option value="" Selected></option>
<option value="PG11">部门1-组1</option>
<option value="PG12">部门1-组2</option>
<option value="PG13">部门1-组3</option>
<option value="PG14">部门2-组1</option>
<option value="PG15">部门2-组2</option>
<option value="PG16">部门3-组1</option>
<option value="PG17">部门3-组2</option>
<option value="PG18">部门3-组3</option>
</select>
负责人1<select name="PJChargePerson1">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option>
<option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option>
<option value="5" >部门1-组3-员工1</option>
<option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option>
<option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option>
<option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option>
<option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option>
<option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
负责人2<select name="PJChargePerson2">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option>
<option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option>
<option value="5" >部门1-组3-员工1</option>
<option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option>
<option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option>
<option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option>
<option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option>
<option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
负责人3<select name="PJChargePerson3">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option>
<option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option>
<option value="5" >部门1-组3-员工1</option>
<option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option>
<option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option>
<option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option>
<option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option>
<option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
解决方案 »
- js的字符串如何转化为对象,在学json的时候遇到点问题
- checkbox值解析的问题
- 怎么用Javascript生成验证码
- '<div style="width:' + value + '%;background:blue;color:#fff">' ie正常火狐不能按比例显示颜色块
- 如何判断用户上传的是Excel文件
- 如何实现对隐藏域取值的引用??
- js中函数的参数可不可以是对象啊?
- javascript如何判断变量类型
- 数字相加减的问题 SOS!!!!
- 关于用零客户端做mis的疑惑!欢迎大家来讨论!
- javascript继承的问题
- 如何能得到url的parameter,我的网页是jsp文件
var project=[];
var person=[];
window.onload=function(){
var selDept=document.getElementsByName("DeptID")[0];
var selProj=document.getElementsByName("ProjectGID")[0];
var selPer1=document.getElementsByName("PJChargePerson1")[0];
var selPer2=document.getElementsByName("PJChargePerson2")[0];
var selPer3=document.getElementsByName("PJChargePerson3")[0];
for(var i=0;i<selProj.options.length;i++)
project[project.length]={"value":selProj.options[i].value,"text":selProj.options[i].text};
for(var i=0;i<selPer1.options.length;i++)
person[person.length]={"value":selPer1.options[i].value,"text":selPer1.options[i].text};
//所在部门change
selDept.onchange=function(){
var selText=this.options[this.selectedIndex].text;
selProj.options.length=1;
for(var i=0;i<project.length;i++){//部门1-组1
var index=project[i]["text"].lastIndexOf("-");
var val=project[i]["text"].substring(0,index);
if(val==selText){
selProj.options[selProj.options.length]=new Option(project[i]["text"],project[i]["value"]);
}
}
}
//所在组change
selProj.onchange=function(){
var selText=this.options[this.selectedIndex].text;
selPer1.options.length=1;
selPer2.options.length=1;
selPer3.options.length=1;
for(var i=0;i<person.length;i++){//部门1-组1
var index=person[i]["text"].lastIndexOf("-");
var val=person[i]["text"].substring(0,index);
if(val==selText){
selPer1.options[selPer1.options.length]=new Option(person[i]["text"],person[i]["value"]);
selPer2.options[selPer2.options.length]=new Option(person[i]["text"],person[i]["value"]);
selPer3.options[selPer3.options.length]=new Option(person[i]["text"],person[i]["value"]);
}
}
}
}
</script>
所在部门:
<select name="DeptID" style="WIDTH:78px">
<option value="" Selected></option>
<option value="BM20">部门1</option>
<option value="BM21">部门2</option>
<option value="BM99">部门3</option>
</select>
所在组:
<select name="ProjectGID" style="WIDTH:78px">
<option value="" Selected></option>
<option value="PG11">部门1-组1</option>
<option value="PG12">部门1-组2</option>
<option value="PG13">部门1-组3</option> <option value="PG14">部门2-组1</option>
<option value="PG15">部门2-组2</option> <option value="PG16">部门3-组1</option>
<option value="PG17">部门3-组2</option>
<option value="PG18">部门3-组3</option>
</select>
负责人1<select name="PJChargePerson1">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option> <option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option> <option value="5" >部门1-组3-员工1</option> <option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option> <option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option> <option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option> <option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option> <option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
负责人2<select name="PJChargePerson2">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option> <option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option> <option value="5" >部门1-组3-员工1</option> <option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option> <option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option> <option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option> <option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option> <option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
负责人3<select name="PJChargePerson3">
<option value="" Selected></option>
<option value="1" >部门1-组1-员工1</option>
<option value="2" >部门1-组1-员工2</option> <option value="3" >部门1-组2-员工1</option>
<option value="4" >部门1-组2-员工2</option> <option value="5" >部门1-组3-员工1</option> <option value="6" >部门2-组1-员工1</option>
<option value="7" >部门2-组1-员工2</option> <option value="8" >部门2-组2-员工1</option>
<option value="9" >部门2-组2-员工2</option>
<option value="10" >部门2-组2-员工3</option> <option value="11" >部门3-组1-员工1</option>
<option value="12" >部门3-组1-员工2</option>
<option value="13" >部门3-组1-员工3</option> <option value="14" >部门3-组2-员工1</option>
<option value="15" >部门3-组2-员工2</option> <option value="16" >部门3-组3-员工1</option>
<option value="17" >部门3-组3-员工2</option>
<option value="18" >部门3-组3-员工3</option>
<option value="19" >部门3-组3-员工4</option>
</select>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
//组
var arry = new Array();
arry['部门1'] = ['部门1-组1','部门1-组2','部门1-组3'];
arry['部门2'] = ['部门2-组1','部门2-组2','部门2-组3'];
arry['部门3'] = ['部门3-组1','部门3-组2','部门3-组3'];
//负责人
var arryCharge = new Array();
arryCharge['部门1-组1'] = ['部门1-组1-员工1','部门1-组1-员工2','','部门1-组1-员工3'];
arryCharge['部门1-组2'] = ['部门1-组2-员工1','部门1-组2-员工2','','部门1-组2-员工3'];
arryCharge['部门1-组3'] = ['部门1-组3-员工1','部门1-组3-员工2','','部门1-组3-员工3'];
arryCharge['部门2-组1'] = ['部门2-组1-员工1','部门2-组1-员工2','','部门2-组1-员工3'];
arryCharge['部门2-组2'] = ['部门2-组2-员工1','部门2-组2-员工2','','部门2-组2-员工3'];
arryCharge['部门2-组3'] = ['部门2-组3-员工1','部门2-组3-员工2','','部门2-组3-员工3'];
arryCharge['部门3-组1'] = ['部门3-组1-员工1','部门3-组1-员工2','','部门3-组1-员工3'];
arryCharge['部门3-组2'] = ['部门3-组2-员工1','部门3-组2-员工2','','部门3-组2-员工3'];
arryCharge['部门3-组3'] = ['部门3-组3-员工1','部门3-组3-员工2','','部门3-组3-员工3'];
// //组
function show() {
var DeptID = document.inputForm.DeptID.value;
document.inputForm.ProjectGID.options.length = 0;
var optionOne;
for (var i in arry[DeptID]) {
optionOne = new Option(arry[DeptID][i],arry[DeptID][i]);
document.inputForm.ProjectGID.options.add(optionOne);
}
} //负责人
function showDown() {
var ProjectGID = document.inputForm.ProjectGID.value;
document.inputForm.PJChargePerson1.options.length = 0;
var optionOne;
for (var j in arryCharge[ProjectGID]) {
optionOne = new Option(arryCharge[ProjectGID][j],arryCharge[ProjectGID][j]);
document.inputForm.PJChargePerson1.options.add(optionOne);
}
}
//-->
</SCRIPT>
</HEAD><BODY>
<form action="" method="post" name="inputForm">
所在部门:
<select name="DeptID" style="WIDTH:78px" onChange="show()">
<option value="" Selected></option>
<option value="部门1">部门1</option>
<option value="部门2">部门2</option>
<option value="部门3">部门3</option>
</select>
所在组:
<select name="ProjectGID" style="WIDTH:78px" onChange="showDown()">
</select>
负责人1
<select name="PJChargePerson1">
</select></form>
</BODY>
</HTML>