2014-10-01 67 views
0

我想uncheck一个radiobutton我找到了一种方法做这一点,但同时单选按钮的表单中的代码将无法正常工作,这是我的unchecking脚本检查单选按钮如何取消单选按钮

<script type="text/javascript"> 
     var allRadios = document.getElementsByName(1); 
     var booRadio; 
     var x = 0; 
     for(x = 0; x < allRadios.length; x++){ 

      allRadios[x].onclick = function() { 
       if(booRadio == this){ 
        this.checked = false; 
        booRadio = null; 
       }else{ 
        booRadio = this; 
       } 
      } 
     } 
    </script> 

    <form name="theForm" target="_blank" action="laravel.php"> 
    <label for="test">test</label> 
    <input type="radio" id="1" class="radio" name="1" value="1"> 
    <input type="radio" id="2" class="radio" name="1" value="2"> 
    <input type="radio" id="3" class="radio" name="1" value="3"> 
    <input type="radio" id="4" class="radio" name="1" value="4"> 
    </form> 

脚本工作正常时,单选按钮形式的标签之外,但在无线电输入的形式为我想知道我是什么在这里失踪

+0

似乎做工精细,http://jsfiddle.net/rL1g9qa4/也许你的输入(这应该是自闭)''导致问题 – andrew 2014-10-01 22:48:52

回答

5

问题是为了它不工作。您在html完成之前加载您的JavaScript。

为了解决这个问题,只需将JavaScript放在文件末尾附近,就在关闭</body>标记之前。

如果你使用jquery,你也可以用$(document).ready(function() { ... }来包装它。

+0

我尝试了不同的名字,我试图把各地的报价,但一切都没有改变 – 2014-10-01 22:53:15

+2

按照popovitsj的建议,你至少应该在表单之后放置你的脚本。如果你使用的是JQuery,那么你也可以考虑把你的整个脚本包装在一个$(document).ready() – 2014-10-01 22:58:57

相关问题