<script language = "javascript">
function a(
x){
for(i=1;i<=2;i++)
{
var colname = "\"col"+i+"\""
y=document.getElementById(colname)
var msg = "COLNAME : "+colname+" i: "+i+" Y: "+y;
alert(msg)
}
}
</script>
<select id = "col1" onchange = "a(
this);">
<option>1</option>
<option>2</option>
<option>3</option>
</select>
<select id = "col2" onchange = "a(
this);">
<option>1</option>
<option>2</option>
<option>3</option>
</select>
紅色字部份不管有沒有加結果都一樣
alert 結果為 :
COLNAME : "col1" i: 1 Y: null
COLNAME : "col2" i: 2 Y: null
為什麼 y 會是null 呢?
※ 編輯: averywu 來自: 59.124.142.152 (12/01 01:08)
1F:→ LPH66:第一 a 裡面沒用到 x 12/01 01:49
2F:→ LPH66:第二 a 裡用到 y 時還沒定義 它當然是什麼都沒有 (null) 12/01 01:49
3F:→ ultrafire:var colname = "col"+i; 12/01 01:54
4F:推 Peruheru:你雖然傳了this物件進去,可是你根本沒拿來用呀 12/01 01:57
5F:→ Peruheru:另外妳y都還沒宣告就要拿來用了啊... 12/01 01:58
6F:推 AstralBrain:改成 var colname = "col" + i; 試試 12/01 05:39
7F:→ AstralBrain:啊 三樓有了.. 12/01 05:39
8F:→ TonyQ:javascript: 你以為我搞的懂啊... 12/01 16:23
9F:推 Peruheru:對了,有三行沒有分號耶,這樣真的能跑嗎? 12/01 16:53
10F:→ averywu:唉,總算解決了。跟3樓的法子一樣。我太菜了(淚.... 12/01 16:58