藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年8月25日 8:28

求:表單select的使用方法?

有一個三級連動的select(分別為select1、select2、select3)
選擇select1後select2根據select1而改變、選擇select2後select3根據select2而改變
這個已經實現。
能否在選擇select1之前select2、select3隱藏,
在選擇了select1後顯示select2
在選擇了select2後顯示select3


我只會寫簡單的……
[html]
<style>
        #slt2{display:none;}
        #slt3{display:none;}
</style>
<script language="javascript">
        function slt(slt){
                slt.style.display="block";
        }
</script>
<select id="slt1" onchange ="slt(slt2)">
        <option>請選擇</option>
        <option>1</option>
</select>
<select id="slt2" onchange="slt(slt3)">
        <option>請選擇</option>
        <option>2</option>
</select>
<select id="slt3">
        <option>請選擇</option>
        <option>3</option>       
</select>
[/html]

多謝zhouma1

可是你這個顯示後再想隱藏就不行了!

同樣的道理嘛,在你想隱藏的事件中加上slt.style.display=none就行了嘛。

其實我最終想實現的效果是:
還有一個select4,它有N個可選項,當選則其中的某一個項時,再顯示select1,以次類推……
當選擇select4的其他選項是select1、select2、select4、select3是隱藏的。

也簡單,將顯示函數的參數改為兩個:(對像,動作)這不就想顯示就顯示,想隱藏就隱藏了麼?

能否煩請zhouma1辛苦一下:
將代碼放出:以實現

還有一個select4,它有N個可選項,當選則其中的某一個項時,再顯示select1,以次類推……
當選擇select4的其他選項是select1、select2、select4、select3是隱藏的。

我都蒙了,不曉得你要什麼效果,一次說清楚嘛。另外,大家只給你一種解決問題的方法,而不是給一個標準的答案。再給一段吧,也不知道符不符合你的要求:
[html]
<style>
select{
        display:none;
}
#slt4{display:block;}
</style>
<script language="javascript">
function fslt(){
        var slt=document.all['slt']
        for(i=0;i<slt.length;i++){
                slt[i].style.display="none";
        }
        slt4.style.display="block";
}

function show(slt){       
        if(slt==slt4){
                switch (slt.value){
                        case "1" :
                                fslt()
                                slt1.style.display="block"
                                break
                        case "2":
                                fslt()
                                slt2.style.display="block"
                                break
                        case "3":
                                fslt()
                                slt3.style.display="block"
                                break
                        case "4" :
                                fslt()
                                break                               
                        }
        }else{
                slt.style.display="block";
        }       
}
</script>
<select name ="slt"id="slt1" onchange ="show(slt2)">
        <option selected>我是slt1</option>
        <option>顯示slt2</option>
</select>
<br>
<select name="slt" id="slt2" onchange="show(slt3)">
        <option selected>我是slt2</option>
        <option>顯示slt3</option>
</select><br>
<select name="slt" id="slt3">
        <option selected>我是slt3</option>
        <option>3</option>       
</select><br>
<select id="slt4" onchange="show(slt4)">
        <option>我是slt4</option>
        <option value="1">顯示slt1</option>
        <option value="2">顯示slt2</option>
        <option value="3">顯示slt3</option>
        <option value="4">其它</option>
</select>
[/html]

感謝zhouma1


你是不是想要這樣的效果
http://zs.wztvu.gx.cn




Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com