Javascript J.S不执行所有命令

Javascript J.S不执行所有命令,javascript,html,Javascript,Html,在下面的代码中,每个“Id”都连接到一个复选框,因此当我选中它时,会打印一个单词,如果我取消选中它,单词就会消失 function DrawRequest() { if(document.getElementById("name").checked == true) document.getElementById("drawrequest").innerHTML="checked"; else document.getElementById("dr

在下面的代码中,每个“Id”都连接到一个复选框,因此当我选中它时,会打印一个单词,如果我取消选中它,单词就会消失

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为“姓氏”的复选框也出现了错误。但最后一个id为“年龄”的复选框工作正常

还有一个问题:如果选中三个复选框,我会打印三个单词吗?
非常感谢:)

无论是否选中,您都会为每个框更新
innerHTML
。每个
if
else
都将覆盖前面的语句设置,从而使前面的操作不相关

您将希望:

  • 在函数的开头将innerHTML设置为空,去掉
    else
    s,如果选中某个框,则仅将HTML设置为“选中”(如果未选中,则不执行任何操作),如果您希望在选中任何框的情况下获得一个“选中”总数
  • 附加到HTML而不是设置它,如果你想“选中”每个框;或
  • 有一个单独的元素来反映每个框的检查性