选中(未)选中CheckBox时显示另一个文本

时间:2015-12-14 19:16:48

标签: javascript checkbox

应该很简单。您有以下文字:

  

你的尖叫声:哎呀!

当您选中下面的复选框

  

尖叫“yay”而不是!

“哎呀!”这个词应改为“Yay!”:

  

你的尖叫:耶!

所以我的身体是(我想用一个函数来做):

Your scream: <script>GiveMeSomeScream()</script>!<hr>
<input type="checkbox" name="whatever" id="ScreamYay"> Scream "yay" instead!

但是我遇到了实际脚本的问题。这是我先试过的:

function GiveMeSomeScream()
{  if (document.GetElementById('ScreamYay').checked == "true")
{  document.write("Yay");
}  else
{  document.write("Whoops");
}}

但它不行。所以我把它扩展为:

var yay = document.getElementById('ScreamYay').checked
function GiveMeSomeScream()
{  if (yay == "true")
{  document.write("Yay");
}  else
{  document.write("Whoops");
}}

现在它每次都会给出“哎呀”(即使我默认选中了复选框),这就差不多了。

我知道这是荒谬的我甚至无法处理复选框,但我仍然很乐意为你提供任何帮助。

3 个答案:

答案 0 :(得分:1)

if (yay == "true")更改为if (yay)

答案 1 :(得分:0)

document.getElementById('elementID').checked返回的值将是布尔值。这进一步解释为here。要使用它,您只需使用if(yay === true)if(yay)来测试值,如@Alex建议的那样。至于使用document.write,您需要包含像this这样的html标记(标记)。

答案 2 :(得分:0)

你可以像下面这样做 你必须在复选框标签上添加onchange功能 还有document.GetElementById错了 document.getElementbyId是对的 最后
document.getElementById(&#34; ScreamYay&#34;)。checked ==&#34; true&#34;是错的 document.getElementById(&#34; ScreamYay&#34;)。checked == true是对的

function GiveMeSomeScream()
{  if (document.getElementById('ScreamYay').checked == true)
{  document.write("Yay");
}  else
{  document.write("Whoops");
}}