2013-11-24 31 views
0

在下面的代碼中,每個「Id」連接到一個複選框,所以當我檢查它時會打印一個單詞,如果我取消選中它,該單詞將消失。J.S不執行所有命令

function DrawRequest() 
{ 
    if(document.getElementById("name").checked == true) 
     document.getElementById("drawrequest").innerHTML="checked"; 
    else 
     document.getElementById("drawrequest").innerHTML=""; 
    if(document.getElementById("surname").checked == true) 
     document.getElementById("drawrequest").innerHTML="checked"; 
    else 
     document.getElementById("drawrequest").innerHTML=""; 
    if(document.getElementById("age").checked == true) 
     document.getElementById("drawrequest").innerHTML="checked"; 
    else 
     document.getElementById("drawrequest").innerHTML=""; 
} 

或者至少這是我在嘗試代碼時應該發生的事情。真正發生的是,當我檢查ID爲「name」的複選框時,沒有任何打印。也發生在ID爲「surname」的複選框中。但是ID爲「age」的最後一個複選框工作正常!

還有一個問題:如果檢查三個複選框,我會打印三個單詞嗎? 非常感謝:)

回答

0

您總是爲每個盒子更新innerHTML,無論它是否被選中。並且每個ifelse都將覆蓋之前的語句設置,使以前的操作不相關。

你想要麼:

  • 設置innerHTML來空白的功能,擺脫else S的的開始,並且只設置HTML來「檢查」如果一個複選框被選中(如果未選中,則不執行任何操作),如果您希望在檢查任何方框時「檢查」總計;
  • 追加到HTML而不是設置它,如果你想爲每個盒子「檢查」;或
  • 有一個單獨的元素來反映每個框的檢查。
+0

非常感謝它工作:) – Anasoft