发新话题
打印

求一小段程序

求一小段程序

要求:存在着两项下拉选择,能实现选完第1 项就能自动选定第2项
如1—A(1对应A) ,那么当选完上面的1后下面自动显示A
谢谢先

TOP

js问题,帮顶了

TOP

ajax应该也可以
不过俺不懂
帮顶
交流QQ群2:16142493
智能手机软件下载
PHP新手不可错过一帖
PHP新手如何获得积分
论坛需要你,我们大家需要你!

TOP

是的,哪位大哥指教下

TOP

偶帮你顶一个吧,一起找找看,谁找到贴上来

TOP

发现网上好多

[Copy to clipboard]
PHP CODE:
<form name="form1" method="post" action=""><table border="0" align="center" cellpadding="2" cellspacing="1"
                 <
tr
                   <
td><div align="right">旅游意向:</div></td
                   <
script language "JavaScript"
var 
onecount
onecount=0
subcat = new Array(); 
//subcat[5] = new Array("abc","1","1"); 
//        5:类别ID            abc:名称 1:类别 1:ID 

subcat[0] = new Array("大洋洲","1","大洋洲"); 

subcat[1] = new Array("东亚","1","东亚"); 

subcat[2] = new Array("南亚","1","南亚"); 

subcat[3] = new Array("东南亚","1","东南亚"); 

subcat[4] = new Array("地中海及非洲","1","地中海及非洲"); 

subcat[5] = new Array("欧洲","1","欧洲"); 

subcat[6] = new Array("港澳地区","1","港澳地区"); 

subcat[7] = new Array("西南","2","西南"); 

subcat[8] = new Array("西北","2","西北"); 

subcat[9] = new Array("华北","2","华北"); 

subcat[10] = new Array("东北","2","东北"); 

subcat[11] = new Array("华中","2","华中"); 

subcat[12] = new Array("华东","2","华东"); 

subcat[13] = new Array("华南","2","华南"); 

subcat[14] = new Array("北京周边","2","北京周边"); 

subcat[15] = new Array("拉丁美洲","1","拉丁美洲"); 

onecount=16

function 
changelocation(locationid
    { 
    
document.form1.areaid.options[0]=new Option("-请选择-",""); 
    
document.form1.areaid.length 1;  

   var 
locationid=locationid
    var 
i
   for (
i=0;onecounti++) 
       { 
          if (
subcat[i][1] == locationid
           {  
                
document.form1.areaid.options[document.form1.areaid.length] = new Option(subcat[i][0], subcat[i][2]); 
           }         
        } 
         
   } 
       
</script> 
                   <td><select name="rootid" id="rootid" > 
                       <option  value="" selected>- 请选择 -</option> 
                       <option value="1">出境</option> 
                       <option value="2">国内</option> 
                       <option value="3">省内</option> 
                   </select></td> 
                   <td> 
                  
                   区域 :</td> 
                   <td><select name="areaid" id="areaid"> 
                       <option  value="" selected>-- 请选择 --</option> 
                   </select></td> 
                 </tr> 
                 <tr> 
                   <td colspan="4"><div align="right"></div>                      
                     <div align="right"> 
                       <input type="submit" name="Submit" value="提交"> 
</div></td> 
                 </tr> 
             </table>   
</form>


[ 本帖最后由 极品黑公子 于 2008-2-14 08:40 编辑 ]

TOP

哦,谢谢

TOP

我这也有段程序 虽然能用但和蚂蚁贴出的差不多,一旦数据多时搞得很难维护!
[Copy to clipboard]
PHP CODE:
<form method="post" name="test">
        <
select name="select1" ></select>
        <
select name="select2"></select>
        <
select name="select3"></select>
</
form>
<
script language="javascript">
<!--
//copyright siginie([email=siginie@hotmail.com]siginie@hotmail.com[/email]),[url=http://www.3ad.cn/]www.3ad.cn[/url]
var arrText = new Array(5);
var 
arrValue = new Array(arrText.length);
function 
objSetOption(select1select2select3) {
        
this.select1 select1;
        
this.select2 select2;
        
this.select3 select3;
}
arrText[0]= new objSetOption("选择1:""选择2_1:,选择2_2:""选择3_1:,选择3_2:");
arrText[1] = new objSetOption("论文:1""语文:1,数学:2,英语:3""初中:2,高中:3");
arrText[2] = new objSetOption("例题:2""显示b2_1:值b2_1,显示b2_2:值b2_2""显示b3_1:值b3_1,显示b3_2:值b3_2");
arrText[3] = new objSetOption("显示c:值c""显示c2_1:值c2_1,显示c2_2:值c2_2""显示c3_1:值c3_1,显示c3_2:值c3_2");
arrText[4] = new objSetOption("显示d:值d""显示d2_1:值d2_1,显示d2_2:值d2_2""显示d3_1:值d3_1,显示d3_2:值d3_2");
arrText[5] = new objSetOption("显示e:值e""显示e2_1:值e2_1,显示e2_2:值e2_2""显示e3_1:值e3_1,显示e3_2:值e3_2");
function 
select() {
        var 
eltSelect1 document.test.select1;
        var 
eltSelect2 document.test.select2;
        var 
eltSelect3 document.test.select3;
        var 
arrSelect1arrSelect2arrSelect3;
        var 
arrData1arrData2arrData3;
        
with(eltSelect1) {
                var 
strSelect options[selectedIndex].value;
        }
        for(
0;arrText.length;++) {
                
arrSelect1 arrText[i].select1;
                
arrData1 arrSelect1.split(":");
                if (
arrData1[1] == strSelect) {
                        
arrSelect2 = (arrText[i].select2).split(",");
                        for(
0;arrSelect2.length;j++) {
                                
arrData2 arrSelect2[j].split(":");
                                
with(eltSelect2) {
                                        
length arrSelect2.length;
                                        
options[j].text arrData2[0];
                                        
options[j].value arrData2[1];
                                }
                        }
                        
arrSelect3 = (arrText[i].select3).split(",");
                        for(
0;arrSelect3.length;j++) {
                                
arrData3 arrSelect3[j].split(":");
                                
with(eltSelect3) {
                                        
length arrSelect3.length;
                                        
options[j].text arrData3[0];
                                        
options[j].value arrData3[1];
                                }
                        }
                        break;
                }
        }
}
function 
init() {
        var 
eltSelect1 document.test.select1;
        var 
eltSelect2 document.test.select2;
        var 
eltSelect3 document.test.select3;
        var 
arrSelect1arrSelect2arrSelect3;
        var 
arrData1arrData2arrData3;
        if (
eltSelect1 != undefined && eltSelect2 != undefined && eltSelect3 != undefined) {
                
with(eltSelect1) {
                        
length arrText.length;
                        for(
0;arrText.length;++) {
                                
arrSelect1 arrText[i].select1;
                                
arrData1 arrSelect1.split(":");
                                
options[i].text arrData1[0];
                                
options[i].value arrData1[1];
                        }
                }
                
with(eltSelect2) {
                        
arrSelect2 = (arrText[0].select2).split(",");
                        
length arrSelect2.length;
                        for(
0;length;++) {
                                
arrData2 arrSelect2[i].split(":");
                                
options[i].text arrData2[0];
                                
options[i].value arrData2[1];
                        }
                }
                
with(eltSelect3) {
                        
arrSelect3 = (arrText[0].select3).split(",");
                        
length arrSelect3.length;
                        for(
0;length;++) {
                                
arrData3 arrSelect3[i].split(":");
                                
options[i].text arrData3[0];
                                
options[i].value arrData3[1];
                        }
                }
        }
}
init();
// -->
</script>





[ 本帖最后由 极品黑公子 于 2008-2-15 17:19 编辑 ]

TOP

不知道有哪为大哥能给出优化的方法

TOP

发新话题