无法发布while循环中创建的多个复选框的值

时间:2018-10-30 01:35:32

标签: php html html5

我的问题也许之前被问过很多次,但是我还不能在项目中应用给定的解决方案

我试图仅发布选定的孩子复选框,而不发布父母

我的页面代码是:

     <?php  $db = mysqli_connect('localhost', 'root', '123', 'test'); ?>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     <html xmlns="http://www.w3.org/1999/xhtml">

     <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <script src="jquery.min.js"></script>
     <script src="cbFamily.js"></script>
     </head>

    <body>
    <form name="myform" method="post" action="test.php">
     <section class="demo2" style="margin-top:2px;">

     <?php
     $query=mysqli_query($db,"SELECT * FROM tblmainjobs");

     while ($row = mysqli_fetch_assoc($query)):
     ?>
    <section>
    <h3><label><input type="checkbox" /> <?php echo $row["mainjob"]; ?> 
    </label></h3>

    <?php 
    $query2=mysqli_query($db,"SELECT userjob FROM users WHERE 
    '".$row["mainjob"]."' = users.mainjob GROUP BY users.userjob");
    while ($row2 = mysqli_fetch_assoc($query2)):
    ?>
    <div class="children">
    <label><input type="checkbox" name="checkbox" value="<?php echo 
    $row2["userjob"]; ?>"/> <?php echo $row2["userjob"]; ?></label>       

    <?php endwhile; ?>

    </section>

    <?php endwhile; ?>

    <script type="text/javascript">  <!-- this function for selecting all 
    children checkboxes once the parents checkbox bieng selected -->
    $("h3 input:checkbox").cbFamily(function (){
    return $(this).parents("h3").next().find("input:checkbox");
    });
    </script>

    </section>  

    <br>
    <div><input class="submit" type="submit" name="submit" value="submit"/> 
    </div>
    </form>

    </body>
    </html>

我的页面看起来像这样 test.php

我的整个项目都附在这里 https://www.sendspace.com/file/6ikcaa

2 个答案:

答案 0 :(得分:0)

您可以使用javascript禁用“父”复选框,然后再将其发布到服务器。

在您的父级复选框中添加一个类,以便使用简单的jquery选择器:

<input type="checkbox" class="parent" />

然后使用一些JavaScript禁用复选框:

$(".parent").prop("disabled",true);

答案 1 :(得分:0)

使用数组:

<input type="checkbox" name="checkbox[]" value="<?php echo 
$row2["userjob"]; ?>"/> <?php echo $row2["userjob"]; ?>

注意name属性中的[]。