0

だから私はクリックされたときに特定のコンテンツを表示/非表示にする動的なチェックボックスを作成しようとしています。私はこれを持っていますが、正しく動作させることができません:

<html> 
<head> 
    <title>Checkbox Event Handler</title> 
    <style type="text/css"> 
        #myGroup {visibility:hidden} 
    </style> 
    <script type="text/javascript"> 
        function toggle(chkbox, group) { 
            var visSetting = (chkbox.checked) ? "visible" : "hidden"; 
            document.getElementById(group).style.visibility = visSetting; 
        } 
        function swap(radBtn, group) { 
            var modemsVisSetting = (group == "modems") ? ((radBtn.checked) ? "" : "none") : "none"; 
            document.getElementById("modems").style.display = modemsVisSetting; 
        } 
    </script>
    <?php require_once("/var/www/html/exercise/Task/functions.php"); ?>
</head> 
<body> 
    <?php
        $seqA[]="AAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBB";
        $seqA[]="BBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCDDDDDDDDDD0";
        $seqA[]="CCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD";
    ?>
    <form>
    <?php
        $i=o;
        foreach($seqA as $seq){
    ?>
            <input type="checkbox" name="monitor"onclick="toggle(this, 'myGroup')" />show results
            <span id="myGroup">
     <?php
            $score=rawtransform(950);
            $truecol= getcolor($score,220);
            colorSequence($seq,5/*hit*/,$truecol,4);
        }
      ?>
            </span>
    </form>
</body>
</html>

$ seqAの最初の文字列を正常に開き、正常に機能しますが、2番目のチェックボックスは最初の文字列内にありますか?確かに私は非常に愚かなことをしましたが、プログラミングは初めてです。誰か助けてください?

4

2 に答える 2

1

私が見ている問題は、各foreachループの反復spanで同じid属性を持つ要素を追加することです。一意のIDを設定し、JavaScripttoggle関数を指定されたアドレスに変更すると、機能しますspan

于 2012-05-15T12:58:32.827 に答える
0

私はPHPにあまり詳しくありませんがspan、同じIDで複数の要素が生成されているようです。これにより、document.getElementByIdが予期しない方法で動作する可能性があります。

于 2012-05-15T12:58:47.593 に答える