如何在Javascript IE7中检测复选框状态

时间:2010-05-05 04:18:41

标签: javascript internet-explorer-7 checkbox

我的网站上有一个简单的复选框。每次检查并取消选中它时,它都会显示状态是什么的警报。这在FF,Chrome和IE8中完美运行。但是,当我在IE7中运行它时,无论检查是打开还是关闭,它总是警告“关闭”。这就像IE7无法检测到复选框已被选中。

有没有人知道如何解决这个问题或解决它?我基本上需要根据复选框切换某些内容的可见性,但IE7很难。谢谢!

这是我正在使用的代码:

function showHideTimeDropdown()  
{   
  if (document.getElementById("input_checkbox").checked == true){
    alert("on");
  }
  else{  
    alert("off");  
  }  
}

修改
好的,事实证明,让元素的名称和ID混淆了浏览器。我使元素的名称与ID不同,并解决了它。

谢谢你们帮助我。只是听说你们曾经尝试过而无法复制我的问题告诉我,也许我正在寻找错误的地方,我当时就是:)

3 个答案:

答案 0 :(得分:4)

好的,事实证明同时让元素的名称和ID混淆了浏览器。我使元素的名称与ID不同,并解决了它。

答案 1 :(得分:1)

您好我想提供帮助,但我无法复制问题..以下是我尝试过的代码。

<html> 
<head> 
  <script language="javascript"> 
  function showHideTimeDropdown()   
{    
  if (document.getElementById("input_checkbox").checked == true){ 
    alert("on"); 
  } 
  else{   
    alert("off");   
  }   
} 
window.onload = function () {showHideTimeDropdown();};
  </script> 
</head> 
<body> 


<input id="input_checkbox" type="checkbox" value="true" onchange="showHideTimeDropdown();">
<input type=text>
</body> 
</html>

答案 2 :(得分:1)

此代码适用于IE7。也许您可以发布复选框的代码以及任何事件处理程序调用“showHideTimeDropdown”函数。

<html>
  <head>
    <script>
      function showHideTimeDropdown()  
      {
        if (document.getElementById("input_checkbox").checked)
          alert("on");
        else
          alert("off");
      }
    </script>
  </head>
  <body>
    <input onclick="showHideTimeDropdown();" id="input_checkbox" type="checkbox"/>
  </body>
</html>