javascript警告复选框值


javascript alert on checkbox value

我有一些复选框,其值属性来自数据库。我希望用户始终选中具有相同值的复选框,如果他不这样做,则使用javascript进行警告。我尝试使用以下javascript代码来完成此操作,但没有使用

<script>
    function ck()
    {
        var x,item,f;
        list=document.getElementById("yo");
        f=list[0].value;
        for(index=1;index<list.length;++index)
        {
            item=list[index];
            x=item.value;
            if(x!=f)
            {
                alert("Wrong type checkboxes selected!");
                break;
            }
        }
    }
</script>

以下是检查框的PHP代码

<?php 
    $flag1=-1;
    $conn = mysqli_connect("localhost", "root","","discvr");
    if(! $conn )
    {
        die('Could not connect: ' . mysql_error());
    }
    for($i = 0; $i < 150; $i++) {
        echo "<tr>";
        $cur_date=date("Y-m-d");
        echo "<td>Noida Sector ".($i+1)."</td>";
        $location="Noida Sector ".($i+1);
        for($j=1;$j<=8;$j++)
        {
            $time_id=$j;
            $sql="select status from final where location = '$location' AND date='".$cur_date."' AND time_id=$time_id";
            $query=mysqli_query($conn,$sql);
            if(!$query)
            {
                $status=0;
                echo "Hi";
            }
            else
            {
                if($row=mysqli_fetch_array($query))
                {   
                    //echo "hi";
                    $status=$row['status'];
                }
                else
                    $status=0;
                //echo $time_id;
            }
            if($i==0)
                echo "<td><input type='checkbox' id='yo' name=time[] value=".$j." value='".$status."' onclick='ck()' > $status </td>";
            else
                echo "<td><input type='checkbox' id='yo' name=time".$i."[] value=".$j."  value='".$status."' onclick='ck()' >$status</td>";
        }
        echo "</tr>";
    }
?>

为每个复选框提供唯一的id,即使您没有使用它们。

注意:页面上的id应该是唯一的。

这样尝试:

使用你的连接和其他这,它是为了演示。

<?php 

    for($i = 0; $i < 150; $i++) {
        echo "<tr>";
        $cur_date=date("Y-m-d");
        echo "<td>Noida Sector ".($i+1)."</td>";
        $location="Noida Sector ".($i+1);
        for($j=1;$j<=8;$j++)
        {
            if($i==0)
                echo "<td><input type='checkbox' id='yo$i' name=time[] value=".$j." value='".$status."' onclick='ck(this.value)' > $status </td>";
            else
                echo "<td><input type='checkbox' id='yo$i' name=time".$i."[] value=".$j."  value='".$status."' onclick='ck(this.value)' >$status</td>";
        }
        echo "</tr>";
    }
?>

javascript:

<script>
    function ck(value)
    {
        var x,item,f;
       list= document.getElementsByTagName("input");
        f=value;
        console.log(f);
        for(i=1;i<list.length;++i)//change your logic here don't know what you are trying here
        {
            item=list[i];
            x=item.value;
            if(x!=f)
            {
                alert("Wrong type checkboxes selected!");
                break;
            }
        }
    }
</script>