高手帮我做个多行三级联动的代码.我是新手. 高手帮我做个多行三级联动的代码.用途:我用ASP做了一全销售开单,要实现多行选商品,因为商品不能一件件开单给客户呀,如高手有别的方法实现我的用用途,教我一下, 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 说具体一点,是不是三个都是多选呢? 比如A,B,C,是不是B里显示所有A选中的项的子项? C也一样? <HTML><HEAD><TITLE> New Document </TITLE><META NAME="Generator" CONTENT="EditPlus"><META NAME="Author" CONTENT=""><META NAME="Keywords" CONTENT=""><META NAME="Description" CONTENT=""><style type="text/css">body{font-family:Courier New, Courier}select{font-size:8pt;font-family:Courier New, Courier}input{font-size:8pt;font-family:Courier New, Courier}</style><SCRIPT LANGUAGE="JavaScript"><!--var sSele=new Array();sSele[0]=new Array('1','11','1');sSele[1]=new Array('2','22','1');sSele[2]=new Array('3','33','1');sSele[3]=new Array('4','44','1');sSele[4]=new Array('5','55','2');sSele[5]=new Array('6','66','2');sSele[6]=new Array('7','77','2');sSele[7]=new Array('8','88','2');//上面这段你从数据库取中类表的值,第一位是ID,第二位是NAME,第三位是所属大类的IDvar sSele1=new Array();sSele1[0]=new Array('1','11','1');sSele1[1]=new Array('2','22','2');sSele1[2]=new Array('3','33','3');sSele1[3]=new Array('4','44','4');sSele1[4]=new Array('5','55','5');sSele1[5]=new Array('6','66','6');sSele1[6]=new Array('7','77','7');sSele1[7]=new Array('8','88','8');sSele1[8]=new Array('9','99','1');sSele1[9]=new Array('10','10','2');sSele1[10]=new Array('11','11','3');sSele1[11]=new Array('12','12','4');sSele1[12]=new Array('13','13','5');sSele1[13]=new Array('14','14','6');sSele1[14]=new Array('15','15','7');sSele1[15]=new Array('16','16','8');//上面这段你从数据库取小类表的值,第一位是ID,第二位是NAME,第三位是所属中类的ID//联动函数,type1为你所想操作的select的名字,pid为当前select的值,name为“请选择产品小类”这类你想设定操作select的默认值,sSelename为所操作select所用到那个数组function onChange(type1,pid,name,sSele,checkname)//这里加个checkname的参数,是本类的选定ID{ln = type1.options.length; while(ln--) { type1.options[ln] = null; }type1.add(new Option(name,"0"));for(i=0;i<sSele.length;i++){if(sSele[i][2]==pid){ if(sSele[i][0]==checkname) type1.add(new Option(sSele[i][1],sSele[i][0],true,'selected'));//这样写才行else type1.add(new Option(sSele[i][1],sSele[i][0]));}}}//呵呵,这个也是无限级联动下拉框了//--></SCRIPT></HEAD><!--在BODY里加上onload来执行, 这个1是传过来的大类ID, 这个3是传过来的中类ID,这个3也是, 这个3是传过来的小类ID,你分别用<%=fsort_id%><%=Sort_id%><%=Nsortid%>代替就行了--><BODY BGCOLOR="#FFFFFF" onload="onChange(add1.sort,1,'请选择产品中类',sSele,3);onChange(add1.nsort,3,'请选择产品中类',sSele1,3);"> <table width="100%" border="1" cellspacing="0" cellpadding="3" align="center" bordercolorlight="#ECEEE4" bordercolordark="#CCCABC"> <tr> <td width="100%" height="30" colspan="6" align="center" background="images/tablebg.gif"><b>产 品 信 息 管 理</b></td> </tr> <form action="AddProduct" method="post" enctype="multipart/form-data" name="add1" onSubmit="return check();"> <input type="hidden" name="id" value="<%=id%>"/> <tr> <td height="25" align="left">所属类别: <select size="1" name="fsort" onChange="javascipt:onChange(add1.sort,this.value,'请选择产品中类',sSele);" > <option value="0">请选择产品大类</option> <option value = "1" selected>1 </option>; <option value = "2" >2 </option>; </select> <select size="1" name="sort" onChange="javascipt:onChange(add1.nsort,this.value,'请选择产品小类',sSele1);"> <option value="0" selected>请选择产品中类</option> </select> <select size="1" name="nsort"> <option value="0" selected>请选择产品小类</option> </select> <span class="style1">*</span></td> </tr> </form> </table></BODY></HTML> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>无标题文档</title></head><script>function an(){ while(f.s2.length>0){ f.s2.remove(0); } //l = f.s2.length ; //for (var i=0;i<l;i++){ // f.s2.remove(0); //} if(f.s1.value=="1"){ newOpt=document.createElement("OPTION"); newOpt.value="1"; newOpt.text="1"; f.s2.add(newOpt); newOpt=document.createElement("OPTION"); newOpt.value="11"; newOpt.text="11"; f.s2.add(newOpt); newOpt=document.createElement("OPTION"); newOpt.value="111"; newOpt.text="111"; f.s2.add(newOpt); } if(f.s1.value=="2"){ newOpt=document.createElement("OPTION"); newOpt.value="2"; newOpt.text="2"; f.s2.add(newOpt); newOpt=document.createElement("OPTION"); newOpt.value="22"; newOpt.text="22"; f.s2.add(newOpt); newOpt=document.createElement("OPTION"); newOpt.value="222"; newOpt.text="222"; f.s2.add(newOpt); } if(f.s1.value=="3"){ newOpt=document.createElement("OPTION"); newOpt.value="3"; newOpt.text="3"; f.s2.add(newOpt); newOpt=document.createElement("OPTION"); newOpt.value="33"; newOpt.text="33"; f.s2.add(newOpt); newOpt=document.createElement("OPTION"); newOpt.value="333"; newOpt.text="333"; f.s2.add(newOpt); }}</script><body><form name="f" method="post" action=""> <select name="s1" onChange = "an()"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> <select name="s2"> <option value="1">1</option> <option value="11">11</option> <option value="111">111</option> </select> <select name="select"> </select></form></body></html> http://www.cnblogs.com/xuanye/archive/2007/02/07/642827.html一个下拉联动控件的实现 <FORM name="isc"><table border="0" cellspacing="0" cellpadding="0"> <tr align="center"> <td nowrap height="11"> <select name="example" size="1" onChange="redirect(this.options.selectedIndex)"><option selected>---Select1-------------</option><option>Webmaster Sites</option><option>News Sites</option></select><select name="stage2" size="1" onChange="redirect1(this.options.selectedIndex)"><option value=" " selected> </option><option value=" " selected>---Select2--------------</option><option value=" " selected>---Select2--------------</option></select><select name="stage3" size="1" onChange="redirect2(this.options.selectedIndex)"><option value=" " selected> </option><option value=" " selected>---Select3----------------</option><option value=" " selected>---Select3----------------</option></select><script><!--/*Triple Combo Script CreditBy Hamid Cheheltani/ Website Abstraction (http://www.wsabstract.com)Visit http://wsabstract.com for this and over 400+ other scripts*/var groups=document.isc.example.options.lengthvar group=new Array(groups)for (i=0; i<groups; i++)group[i]=new Array()group[0][0]=new Option("---Select2---"," ");group[1][0]=new Option("Now Select This One"," ");group[1][1]=new Option("JavaScript","47");group[1][2]=new Option("DHTML","46");group[1][3]=new Option("CGI","45");group[2][0]=new Option("Now Select This One"," ");group[2][1]=new Option("General News","115");group[2][2]=new Option("Technology News","116"); var temp=document.isc.stage2function redirect(x){for (m=temp.options.length-1;m>0;m--)temp.options[m]=nullfor (i=0;i<group[x].length;i++){temp.options[i]=new Option(group[x][i].text,group[x][i].value)}temp.options[0].selected=trueredirect1(0)}var secondGroups=document.isc.stage2.options.lengthvar secondGroup=new Array(groups)for (i=0; i<groups; i++) {secondGroup[i]=new Array(group[i].length)for (j=0; j<group[i].length; j++) {secondGroup[i][j]=new Array() }}secondGroup[0][0][0]=new Option("---Select 3---"," ");secondGroup[1][0][0]=new Option("---Select 3---"," ");secondGroup[1][1][0]=new Option("Now Select This One"," ");secondGroup[1][1][1]=new Option("Website Abstraction","http://wsabstract.com");secondGroup[1][1][2]=new Option("JavaScript for the non programmer","http://webteacher.com/javascript/");secondGroup[1][1][3]=new Option("Java-Scripts.net","http://java-scripts.net");secondGroup[1][2][0]=new Option("Now Select This One"," ");secondGroup[1][2][1]=new Option("Dynamic Drive","http://www.dynamicdrive.com");secondGroup[1][2][2]=new Option("Beginner\'s Guide to DHTML","http://www.geocities.com/ResearchTriangle/Facility/4490/");secondGroup[1][2][3]=new Option("Web Coder","http://webcoder.com/");secondGroup[1][3][0]=new Option("Now Select This One"," ");secondGroup[1][3][1]=new Option("CGI Resources","http://www.cgi-resources.com");secondGroup[1][3][2]=new Option("Ada\'s Intro to CGI","http://adashimar.hypermart.net/");secondGroup[2][0][0]=new Option("---Select 3---"," ");secondGroup[2][1][0]=new Option("Now Select This One"," ");secondGroup[2][1][1]=new Option("CNN","http://www.cnn.com");secondGroup[2][1][2]=new Option("MSNBC","http://www.msnbc.com");secondGroup[2][1][3]=new Option("ABC News","http://www.abcnews.com");secondGroup[2][2][0]=new Option("Now Select A Page"," ");secondGroup[2][2][1]=new Option("News.com","http://www.news.com");secondGroup[2][2][2]=new Option("Wired","http://www.wired.com");var temp1=document.isc.stage3function redirect1(y){for (m=temp1.options.length-1;m>0;m--)temp1.options[m]=nullfor (i=0;i<secondGroup[document.isc.example.options.selectedIndex][y].length;i++){temp1.options[i]=new Option(secondGroup[document.isc.example.options.selectedIndex][y][i].text,secondGroup[document.isc.example.options.selectedIndex][y][i].value)}temp1.options[0].selected=true}function redirect2(z){window.location=temp1[z].value}//--></script> </td> </tr></table></FORM> Jquery 删除模糊属性 Extjs中控件的removeListener函数不管用 javascript 如何捕捉关闭浏览器tab页面事件 在一个frameset中点击button,提交另一个framset中的text值 关于<input type=file>问题 请问,用htc的无限树中这个意思 高手帮帮忙!如何禁止图片下载? 有关TAB键的问题(急!!先谢了!!) 请帮我看看飞鱼网站的编程技巧中左边的树怎么实现的???? 如何实现百度地图的左栏的收缩展开功能 一段超酷JS代码,帮忙看一下,谢! 弱类型语言的郁闷--Javascript in ASP,大家一起来看看。
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<style type="text/css">
body{font-family:Courier New, Courier}
select{font-size:8pt;font-family:Courier New, Courier}
input{font-size:8pt;font-family:Courier New, Courier}
</style>
<SCRIPT LANGUAGE="JavaScript">
<!--
var sSele=new Array();
sSele[0]=new Array('1','11','1');
sSele[1]=new Array('2','22','1');
sSele[2]=new Array('3','33','1');
sSele[3]=new Array('4','44','1');
sSele[4]=new Array('5','55','2');
sSele[5]=new Array('6','66','2');
sSele[6]=new Array('7','77','2');
sSele[7]=new Array('8','88','2');
//上面这段你从数据库取中类表的值,第一位是ID,第二位是NAME,第三位是所属大类的ID
var sSele1=new Array();
sSele1[0]=new Array('1','11','1');
sSele1[1]=new Array('2','22','2');
sSele1[2]=new Array('3','33','3');
sSele1[3]=new Array('4','44','4');
sSele1[4]=new Array('5','55','5');
sSele1[5]=new Array('6','66','6');
sSele1[6]=new Array('7','77','7');
sSele1[7]=new Array('8','88','8');
sSele1[8]=new Array('9','99','1');
sSele1[9]=new Array('10','10','2');
sSele1[10]=new Array('11','11','3');
sSele1[11]=new Array('12','12','4');
sSele1[12]=new Array('13','13','5');
sSele1[13]=new Array('14','14','6');
sSele1[14]=new Array('15','15','7');
sSele1[15]=new Array('16','16','8');
//上面这段你从数据库取小类表的值,第一位是ID,第二位是NAME,第三位是所属中类的ID//联动函数,type1为你所想操作的select的名字,pid为当前select的值,name为“请选择产品小类”这类你想设定操作select的默认值,sSelename为所操作select所用到那个数组function onChange(type1,pid,name,sSele,checkname)//这里加个checkname的参数,是本类的选定ID
{
ln = type1.options.length;
while(ln--) {
type1.options[ln] = null;
}
type1.add(new Option(name,"0"));
for(i=0;i<sSele.length;i++)
{
if(sSele[i][2]==pid)
{
if(sSele[i][0]==checkname)
type1.add(new Option(sSele[i][1],sSele[i][0],true,'selected'));//这样写才行
else
type1.add(new Option(sSele[i][1],sSele[i][0]));}
}
}//呵呵,这个也是无限级联动下拉框了
//-->
</SCRIPT>
</HEAD>
<!--在BODY里加上onload来执行, 这个1是传过来的大类ID, 这个3是传过来的中类ID,这个3也是, 这个3是传过来的小类ID,你分别用<%=fsort_id%><%=Sort_id%><%=Nsortid%>代替就行了-->
<BODY BGCOLOR="#FFFFFF" onload="onChange(add1.sort,1,'请选择产品中类',sSele,3);onChange(add1.nsort,3,'请选择产品中类',sSele1,3);">
<table width="100%" border="1" cellspacing="0" cellpadding="3" align="center" bordercolorlight="#ECEEE4" bordercolordark="#CCCABC">
<tr>
<td width="100%" height="30" colspan="6" align="center" background="images/tablebg.gif"><b>产 品 信 息 管 理</b></td>
</tr>
<form action="AddProduct" method="post" enctype="multipart/form-data" name="add1" onSubmit="return check();">
<input type="hidden" name="id" value="<%=id%>"/>
<tr>
<td height="25" align="left">所属类别:
<select size="1" name="fsort" onChange="javascipt:onChange(add1.sort,this.value,'请选择产品中类',sSele);" >
<option value="0">请选择产品大类</option>
<option value = "1" selected>1 </option>;
<option value = "2" >2 </option>;
</select>
<select size="1" name="sort" onChange="javascipt:onChange(add1.nsort,this.value,'请选择产品小类',sSele1);">
<option value="0" selected>请选择产品中类</option>
</select>
<select size="1" name="nsort">
<option value="0" selected>请选择产品小类</option>
</select> <span class="style1">*</span></td>
</tr>
</form>
</table></BODY>
</HTML>
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<script>
function an(){
while(f.s2.length>0){
f.s2.remove(0);
}
//l = f.s2.length ;
//for (var i=0;i<l;i++){
// f.s2.remove(0);
//}
if(f.s1.value=="1"){
newOpt=document.createElement("OPTION");
newOpt.value="1";
newOpt.text="1";
f.s2.add(newOpt);
newOpt=document.createElement("OPTION");
newOpt.value="11";
newOpt.text="11";
f.s2.add(newOpt);
newOpt=document.createElement("OPTION");
newOpt.value="111";
newOpt.text="111";
f.s2.add(newOpt);
}
if(f.s1.value=="2"){
newOpt=document.createElement("OPTION");
newOpt.value="2";
newOpt.text="2";
f.s2.add(newOpt);
newOpt=document.createElement("OPTION");
newOpt.value="22";
newOpt.text="22";
f.s2.add(newOpt);
newOpt=document.createElement("OPTION");
newOpt.value="222";
newOpt.text="222";
f.s2.add(newOpt);
}
if(f.s1.value=="3"){
newOpt=document.createElement("OPTION");
newOpt.value="3";
newOpt.text="3";
f.s2.add(newOpt);
newOpt=document.createElement("OPTION");
newOpt.value="33";
newOpt.text="33";
f.s2.add(newOpt);
newOpt=document.createElement("OPTION");
newOpt.value="333";
newOpt.text="333";
f.s2.add(newOpt);
}}
</script>
<body>
<form name="f" method="post" action="">
<select name="s1" onChange = "an()">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select name="s2">
<option value="1">1</option>
<option value="11">11</option>
<option value="111">111</option>
</select>
<select name="select">
</select>
</form>
</body>
</html>
一个下拉联动控件的实现
<table border="0" cellspacing="0" cellpadding="0">
<tr align="center">
<td nowrap height="11"> <select name="example" size="1" onChange="redirect(this.options.selectedIndex)">
<option selected>---Select1-------------</option>
<option>Webmaster Sites</option>
<option>News Sites</option>
</select><select name="stage2" size="1" onChange="redirect1(this.options.selectedIndex)">
<option value=" " selected> </option>
<option value=" " selected>---Select2--------------</option>
<option value=" " selected>---Select2--------------</option>
</select><select name="stage3" size="1" onChange="redirect2(this.options.selectedIndex)">
<option value=" " selected> </option>
<option value=" " selected>---Select3----------------</option>
<option value=" " selected>---Select3----------------</option>
</select><script>
<!--/*
Triple Combo Script Credit
By Hamid Cheheltani/ Website Abstraction (http://www.wsabstract.com)
Visit http://wsabstract.com for this and over 400+ other scripts
*/var groups=document.isc.example.options.length
var group=new Array(groups)
for (i=0; i<groups; i++)
group[i]=new Array()group[0][0]=new Option("---Select2---"," ");group[1][0]=new Option("Now Select This One"," ");
group[1][1]=new Option("JavaScript","47");
group[1][2]=new Option("DHTML","46");
group[1][3]=new Option("CGI","45");group[2][0]=new Option("Now Select This One"," ");
group[2][1]=new Option("General News","115");
group[2][2]=new Option("Technology News","116"); var temp=document.isc.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
redirect1(0)
}var secondGroups=document.isc.stage2.options.length
var secondGroup=new Array(groups)
for (i=0; i<groups; i++) {
secondGroup[i]=new Array(group[i].length)
for (j=0; j<group[i].length; j++) {
secondGroup[i][j]=new Array() }}secondGroup[0][0][0]=new Option("---Select 3---"," ");
secondGroup[1][0][0]=new Option("---Select 3---"," ");
secondGroup[1][1][0]=new Option("Now Select This One"," ");
secondGroup[1][1][1]=new Option("Website Abstraction","http://wsabstract.com");
secondGroup[1][1][2]=new Option("JavaScript for the non programmer","http://webteacher.com/javascript/");
secondGroup[1][1][3]=new Option("Java-Scripts.net","http://java-scripts.net");secondGroup[1][2][0]=new Option("Now Select This One"," ");
secondGroup[1][2][1]=new Option("Dynamic Drive","http://www.dynamicdrive.com");
secondGroup[1][2][2]=new Option("Beginner\'s Guide to DHTML","http://www.geocities.com/ResearchTriangle/Facility/4490/");
secondGroup[1][2][3]=new Option("Web Coder","http://webcoder.com/");secondGroup[1][3][0]=new Option("Now Select This One"," ");
secondGroup[1][3][1]=new Option("CGI Resources","http://www.cgi-resources.com");
secondGroup[1][3][2]=new Option("Ada\'s Intro to CGI","http://adashimar.hypermart.net/");secondGroup[2][0][0]=new Option("---Select 3---"," ");
secondGroup[2][1][0]=new Option("Now Select This One"," ");
secondGroup[2][1][1]=new Option("CNN","http://www.cnn.com");
secondGroup[2][1][2]=new Option("MSNBC","http://www.msnbc.com");
secondGroup[2][1][3]=new Option("ABC News","http://www.abcnews.com");secondGroup[2][2][0]=new Option("Now Select A Page"," ");
secondGroup[2][2][1]=new Option("News.com","http://www.news.com");
secondGroup[2][2][2]=new Option("Wired","http://www.wired.com");var temp1=document.isc.stage3
function redirect1(y){
for (m=temp1.options.length-1;m>0;m--)
temp1.options[m]=null
for (i=0;i<secondGroup[document.isc.example.options.selectedIndex][y].length;i++){
temp1.options[i]=new Option(secondGroup[document.isc.example.options.selectedIndex][y][i].text,secondGroup[document.isc.example.options.selectedIndex][y][i].value)
}
temp1.options[0].selected=true
}function redirect2(z){
window.location=temp1[z].value
}//-->
</script> </td>
</tr>
</table>
</FORM>