[jQuery通过选择从数据库动态显示表

问题描述 投票:1回答:1

当我更改选项时,每次从数据库中获取某些数据时,都会显示此代码。

选择按钮

<head>    
<script src="jquery-3.4.1.min.js"></script>
</head>


    <select id="seira" class="seira">
        <option value="ola">ΣΕΙΡΑ</option>
        <option value="S 67">S 67</option>    
        <option value="M 9660">M 9660</option>
        <option value="M 11000">M 11000</option>
        <option value="M 20000">M 20000</option>
        <option value="M 9400">M 9400</option>
        <option value="S 560">S 560</option>
        <option value="S 350">S 350</option>
        <option value="M 14600">M 14600</option>
        <option value="M 9200">M 9200</option>
        <option value="ΣΗΤΕΣ">ΣΗΤΕΣ</option>
        <option value="ΓΑΛΟΝΑΚΙΑ">ΓΑΛΟΝΑΚΙΑ</option>
        <option value="ΠΗΧΑΚΙΑ">ΠΗΧΑΚΙΑ</option>
        <option value="ΑΡΜΟΚΑΛΥΠΤΡΑ">ΑΡΜΟΚΑΛΥΠΤΡΑ</option>
        <option value="ΡΑΜΠΟΤΕ">ΡΑΜΠΟΤΕ</option>
    </select>



<script>
$(document).ready(function(){
    $('select.seira').change(function(){
        var seira = $("#seira").val();
        $.post("display_seira.php", 
                {
                     seira : seira
                },function(data){

                    $("#display").html(data);

                });

    });
});
</script>

表的表头及下面的我想显示我的数据库

<table>  
        <thead>
            <tr>
                <th>ID</th>
                <th>Περιγραφή</th>
                <th>Kατασκευαστής</th>
                <th><?php include_once 'select_seira.php' ?></th>
                <th>Χρώμα</th>
                <th>Μήκος</th>
                <th>Ποσότητα</th>
                <th>Τοποθεσία</th>    
            </tr>
        </thead>

        <p id="display"></p>          

    </table>

如果选择了第一个值,那么我想显示我的所有数据库,否则我想显示我选择的“ seira”。

<?php
include_once 'database/database_connection.php';
$seira = $_POST['seira'];
?>


<?php  
 if ($seira = 'ola') {  ?>
    <tbody>         
    <?php

           $sql = "SELECT * FROM stock_alumil;";
           $result = mysqli_query($conn, $sql);      
           $resultCheck = mysqli_num_rows($result);
           if ($resultCheck > 0) {
               while  ($row = mysqli_fetch_assoc($result)){
                   ?>
<tr id="row"  ?>
   <td style="font-weight: bold; letter-spacing: 2px;"><?php echo $row['id']; ?>
   <input type="hidden" name='id' value="<?php echo $row['id']; ?>"></td>
   <td style="font-style: italic;"><?php echo $row['name']; ?></td>
   <td style="font-style: oblique;"><?php echo $row['buyer']; ?></td>
   <td style="font-style: italic;"><?php echo $row['seira']; ?></td>          
   <td><?php echo $row['color']; ?></td>
   <td><?php echo $row['length']; 
   echo " (mm)";?></td>
   <td id="value10" style="font-weight: bold; background:<?= ($row['value'] >= 10 ? 'rgb(132, 247, 132)' : ($row['value'] >= 5? 'orange' : 'rgb(247, 132, 132)'));?>"><?php echo $row['value'];?>
   <input type="hidden" name='value' value="<?php echo $row['value']; ?>"></td> 


   <td><?php echo $row['place'];?></td>  


</tr>


       <?php
           }    
       }

       ?>

</tbody>
<?php }else {?>
    <tbody>         
                    <?php
                        $i = 0;
                        $sql = "SELECT * FROM `stock_alumil` WHERE `seira`='$seira';";
                        $result = mysqli_query($conn, $sql);      
                        $resultCheck = mysqli_num_rows($result);
                        if ($resultCheck > 0) {
                            while  ($row = mysqli_fetch_assoc($result)){
                                ?>
            <tr id="row"  ?>
                <td style="font-weight: bold; letter-spacing: 2px;"><?php echo $row['id']; ?>
                <input type="hidden" name='id' value="<?php echo $row['id']; ?>"></td>
                <td style="font-style: italic;"><?php echo $row['name']; ?></td>
                <td style="font-style: oblique;"><?php echo $row['buyer']; ?></td>
                <td style="font-style: italic;"><?php echo $row['seira']; ?></td>          
                <td><?php echo $row['color']; ?></td>
                <td><?php echo $row['length']; 
                echo " (mm)";?></td>
                <td id="value10" style="font-weight: bold; background:<?= ($row['value'] >= 10 ? 'rgb(132, 247, 132)' : ($row['value'] >= 5? 'orange' : 'rgb(247, 132, 132)'));?>"><?php echo $row['value'];?>
                <input type="hidden" name='value' value="<?php echo $row['value']; ?>"></td> 


                <td><?php echo $row['place'];?></td>   


            </tr>


                    <?php
                        }    
                    }

                    ?>

        </tbody>
<?php } ?> 

我尝试过,但是它只显示我选择的第一个值,并且当我想更改选择值时,它什么也没做。

有什么想法吗?

php jquery database post
1个回答
0
投票

大家好,我找到了我的代码的答案。如果有人要检查,我会在下面发布。

新的jQuery代码

<script>
$(document).ready(function(){
    $('select.seira').change(function(){       
        $("select option:selected").each(function(){
            $("#display_full").hide();
            var seira = $(this).val();
            $.post("display_seira.php", 
                {
                     seira : seira
                },function(data){    
                    $("#display").html(data);  
                });
        })
    });
});
</script>

现在每次更改选择选项时,都会自动显示一个新表,而无需刷新页面。

© www.soinside.com 2019 - 2024. All rights reserved.