作者PICASSO1 (Pablo Picasso G.)
看板Ajax
標題[ JS ] JavaScript + 下拉式選單的問題??
時間Sat Jan 12 00:16:18 2008
Browser: FireFox
Language: HTML, JavaScript
原始碼如下:
<!-- Main.HTML -->
<html>
<head><title>哇~哈~哈~哈~哈~~~
</title>
<script language="JavaScript"
src="JS.js"
><!-- //--></script>
</head>
<body>
<center>
<form name="PID" mothed
=POST
>
<select name="AAA"
OnChange="Show(this.options.selectedIndex)"
>
<option value="A"
>---
</option>
<option value="B"
>甲
</option>
<option value="C"
>乙
</option>
<option value="D"
>丙
</option>
</select>
<br><br><br>
<select name="BBB"
>---
</select>
</form>
</center>
</body>
</html>
// JS.js
function Show(RET)
{
with(
document.PID.BBB)
if(RET
== 0)
{
options[
0]
= new Option("---", "---");
return;
}
else if(RET
== 1)
{
for(
var i
=0; i
< 10; i
++)
options[i
] = new Option(i
+1);
/* for( ; i< 30; i++)
options[i] = new Option(); */
}
else if(RET
== 2)
{
for(
var i
=0; i
< 20; i
++)
options[i
] = new Option(i
+1);
/* for( ; i< 30; i++)
options[i] = new Option(); */
}
else /* if(RET == 3) */
{
for(
var i
=0; i
< 30; i
++)
options[i
] = new Option(i
+1);
/* for( ; i< 30; i++)
options[i] = new Option();*/
}
return;
}
我想請問一下,
1. 當我依序選擇甲、乙、丙的時後,可以正常顯示1~10、1~20、1~30;可是當我從反方
向選擇的時後(丙、乙、甲),卻都只出現1~30。感覺上有點像是當我先選擇丙,再選擇乙
的時後、後面的21~30沒有把它清掉;再選擇甲,後面的11~30又沒把它清掉。我有想到
*.JS檔裡註解的部份,可是如此一來甲和乙的下拉式選單會變得很醜,會多一大堆沒用的
空白,請問這該怎麼改比較好??
2. 第二個問題是:當我選擇乙的時後,按下Refresh(重新整理),第一個下拉式選單還是
會停留在乙,可是,直接按下第二個選單的時後,卻不會出現乙應該出現的1~20。反而要
先選擇甲或丙,才會出現正常的數值。還有就是我希望當User按下Refresh的時後,兩個
選單都回覆到0的狀態,而不是第一個下拉式選單還停留在上一個的狀態。請問這個Bug該
怎麼改??
--
╭人真好,我去看電視 ╭ 幹....
︴ ◢ _▃_ 啊~啊~啊~
\●/要幫我修好喔~
囧 ▏ ︴ █ 囧 "○ 好人修慢一點喔!!
▲ ▇\▁Λ
︴ ] /■\ (|\ ╭啊~~喔~~嗯~~
<\ 〒> █ ︴ █ || ︵ β /`○rz
︴ ◤◥◣◥◣
女生都把好人當[工具] 把壞人當[陽具]了啊 幹!!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.120.114.82
1F:推 fillano:1.Show()每次執行都要重新產生options啦 01/12 01:50
2F:→ fillano:2. 網頁load完再用script去調阿 01/12 01:53