2012-12-30 53 views
1

我有一個複選框被PHP回顯。所以,複選框的ID將是動態的。使用變量getElementById

所以,我想使用一個變量爲document.getElementById()

下面是我的PHP代碼:

echo "<td><input type='checkbox' name='edit$count' value='1' onclick='test($count)'></td>"; 

然後這裏是我的Javascript代碼

function test(v) 
    { 
     var edit = "edit" + v; 


     if(document.getElementById(edit).checked==true){ 
      alert(edit); 
     } 
    } 

然而,當我點擊複選框,沒有任何警報。

我的代碼有問題嗎?

+0

'$ count'是什麼? – 0x499602D2

+0

$ count是每個循環都會增加+1的變量。 –

+0

什麼是循環開始處的$ count? – 0x499602D2

回答

1

document.getElementById替換爲document.getElementsByName[]或將您的HTML中的name屬性更改爲id s。你不使用你的HTML id屬性這就是爲什麼getElementById將返回null

if (document.getElementsByName(edit)[v].checked == true) { ... } 

你也不需要== true的if語句會照顧它的布爾環境:

if (document.getElementsByName(edit)[v].checked) { ... } 
+0

明白了!謝謝! –

0

答案是因爲你將name輸入了輸入,然後試圖通過id得到它。將name='$count'更改爲id='$count'。對於未來:幾乎所有的瀏覽器都提供了帶有調試器的開發工具,請隨時用它來調查JavaScript問題。

相關問題