0

だから私はこれらの束をフォームの内容ごとに分けています。しかし、何らかの理由で、単一のチェックボックスがオフになり、[すべて切り替え]をクリックしてもすべてチェックされなくなります。

何か案が?

<form>
    <input  type="checkbox" name="pkid[]" value="1">
    .... content blah blah ...
    <input  type="checkbox" name="pkid[]" value="2">
    .... content blah blah ...
    <input  type="checkbox" name="pkid[]" value="3">
    .... content blah blah ...
    <input  type="checkbox" name="pkid[]" value="4">  
    .... content blah blah ...



    <script language="JavaScript">
    function toggle(source) {
      checkboxes = document.getElementsByName('pkid[]');
      for each(var checkbox in checkboxes)
        checkbox.checked = source.checked;
    }
    </script>



    <input type="checkbox" onClick="toggle(this)" /> Toggle All<br/>
</form>

私のページにあるこれらの他のJavaScriptコードと競合する可能性はありますか?

     <script type="text/javascript">
    $(document).ready(function(){
    $(".vote-art, .home-art, .rss-art , .new-art").click(function(){

    if($(this).children("input").is(':checked'))
       {
       $(this).children("input").attr('checked',false);
       }
       else
       { 
       $(this).children("input").attr('checked',true);
       }

});
});
</script>
    <script type="text/javascript">
    $(document).ready(function(){


    if($('#new-home').is(':checked'))
       {
       $('#new-hide').attr('checked',false);
       }
     if($('#new-hide').is(':checked'))
       { 
   $('#new-home').attr('checked',true);
   }


});
</script>
4

1 に答える 1

0

foreach ループをこれに変更します

for (var i = 0; i < checkboxes.length; i++) {
    checkboxes[i].checked = source.checked;
}
于 2012-09-20T20:04:34.603 に答える