Ajax таблица ничего не показывает - PullRequest
0 голосов
/ 19 апреля 2020

Я создаю таблицу, используя ajax и php, но есть одна проблема, таблица не отображается в моем div. Я действительно новичок в ajax, поэтому я еще не совсем понимаю его.

Вот мой div:

<div class="body" id="live-data">
</div>

Вот код ajax:

$(document).ready( function() {
    function fetch_data() {  
        $.ajax({  
            url:"fetch.php",  
            method:"POST",  
            success:function(data){  
                $('#live_data').html(data);  
            }  
        });  
    }
    fetch_data(); 
});

А вот выборка. php:

<?php

include('../global/db.php');

$output = ''; 
$sql ="SELECT * FROM students WHERE status = '0' AND stud_grade = '$level_id' ORDER BY date_enrolled DESC";  
$result = mysqli_query($db, $sql);  
$output .= '  
<div class="table-responsive">  
    <table class="table table-bordered table-striped table-hover dataTable js-exportable">
        <thead>
            <tr>
                <th width="135" class="noExport">Action</th>
                <th width="90">LRN</th>
                <th width="20">Level</th>
                <th>Name</th>
                <th width="20">Gender</th>
                <th width="60">Type</th>
                <th width="105" style="font-size: 14px!important;">Date Enrolled</th>
            </tr>
        </thead>
        <tbody>';
if(mysqli_num_rows($result) > 0) {
    while($row = mysqli_fetch_array($result)){ 
        $output .= ' 
            <tr>
                <td>
                    <button type="button" class="btn bg-cyan btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?>">
                        <i class="material-icons">search</i>
                        <span>Profile</span>
                    </button>&nbsp;
                    <button type="button" class="btn bg-orange btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?><?php echo $stud_id ?>">
                        <i class="material-icons">person</i>
                        <span>Parent</span>
                    </button>
                </td>
                <td><?php echo $stud_lrn ?></td>
                <td><?php echo $stud_grade ?></td>
                <td><?php echo $stud_lname ?>, <?php echo $stud_fname ?> <?php echo $stud_mname ?></td>
                <td><?php echo $stud_gender ?></td>
                <td><?php echo $stud_type ?></td>
                <td style="font-size: 12px!important;"><?php echo $date_enrolled = date("M-d-Y g:i A", strtotime($date_enrolled));?></td>
            </tr>
        ';
    }
}

else {  
        $output .= '
            <tr>  
                <td colspan="12">Data not Found</td>  
            </tr>';  
}  

 $output .= '
        </tbody>
    </table>  
</div>';  

echo $output;  

?>

Было бы здорово, если бы кто-то мог помочь, потому что я просто не знаю, почему это не работает

Редактировать: Я изменил код, чтобы он возвращал данные на вкладке консоли, и вот что отображается:

<div class="table-responsive">  
    <table class="table table-bordered table-striped table-hover dataTable js-exportable">
        <thead>
            <tr>
                <th width="135" class="noExport">Action</th>
                <th width="90">LRN</th>
                <th width="20">Level</th>
                <th>Name</th>
                <th width="20">Gender</th>
                <th width="60">Type</th>
                <th width="105" style="font-size: 14px!important;">Date Enrolled</th>
            </tr>
        </thead>
        <tbody> 
            <tr>
                <td>
                    <button type="button" class="btn bg-cyan btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?>">
                        <i class="material-icons">search</i>
                        <span>Profile</span>
                    </button>&nbsp;
                    <button type="button" class="btn bg-orange btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?><?php echo $stud_id ?>">
                        <i class="material-icons">person</i>
                        <span>Parent</span>
                    </button>
                </td>
                <td><?php echo $stud_lrn ?></td>
                <td><?php echo $stud_grade ?></td>
                <td><?php echo $stud_lname ?>, <?php echo $stud_fname ?> <?php echo $stud_mname ?></td>
                <td><?php echo $stud_gender ?></td>
                <td><?php echo $stud_type ?></td>
                <td style="font-size: 12px!important;"><?php echo $date_enrolled = date("M-d-Y g:i A", strtotime($date_enrolled));?></td>
            </tr>

            <tr>
                <td>
                    <button type="button" class="btn bg-cyan btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?>">
                        <i class="material-icons">search</i>
                        <span>Profile</span>
                    </button>&nbsp;
                    <button type="button" class="btn bg-orange btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?><?php echo $stud_id ?>">
                        <i class="material-icons">person</i>
                        <span>Parent</span>
                    </button>
                </td>
                <td><?php echo $stud_lrn ?></td>
                <td><?php echo $stud_grade ?></td>
                <td><?php echo $stud_lname ?>, <?php echo $stud_fname ?> <?php echo $stud_mname ?></td>
                <td><?php echo $stud_gender ?></td>
                <td><?php echo $stud_type ?></td>
                <td style="font-size: 12px!important;"><?php echo $date_enrolled = date("M-d-Y g:i A", strtotime($date_enrolled));?></td>
            </tr>

            <tr>
                <td>
                    <button type="button" class="btn bg-cyan btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?>">
                        <i class="material-icons">search</i>
                        <span>Profile</span>
                    </button>&nbsp;
                    <button type="button" class="btn bg-orange btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?><?php echo $stud_id ?>">
                        <i class="material-icons">person</i>
                        <span>Parent</span>
                    </button>
                </td>
                <td><?php echo $stud_lrn ?></td>
                <td><?php echo $stud_grade ?></td>
                <td><?php echo $stud_lname ?>, <?php echo $stud_fname ?> <?php echo $stud_mname ?></td>
                <td><?php echo $stud_gender ?></td>
                <td><?php echo $stud_type ?></td>
                <td style="font-size: 12px!important;"><?php echo $date_enrolled = date("M-d-Y g:i A", strtotime($date_enrolled));?></td>
            </tr>

            <tr>
                <td>
                    <button type="button" class="btn bg-cyan btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?>">
                        <i class="material-icons">search</i>
                        <span>Profile</span>
                    </button>&nbsp;
                    <button type="button" class="btn bg-orange btn-xs waves-effect" data-toggle="modal" data-target="#<?php echo $stud_id ?><?php echo $stud_id ?>">
                        <i class="material-icons">person</i>
                        <span>Parent</span>
                    </button>
                </td>
                <td><?php echo $stud_lrn ?></td>
                <td><?php echo $stud_grade ?></td>
                <td><?php echo $stud_lname ?>, <?php echo $stud_fname ?> <?php echo $stud_mname ?></td>
                <td><?php echo $stud_gender ?></td>
                <td><?php echo $stud_type ?></td>
                <td style="font-size: 12px!important;"><?php echo $date_enrolled = date("M-d-Y g:i A", strtotime($date_enrolled));?></td>
            </tr>

        </tbody>
    </table>  
</div>

Таким образом, он явно возвращает правильные данные, но просто не отображается в живых данных ДИВ

Ответы [ 2 ]

1 голос
/ 19 апреля 2020

Может быть, посмотрите в вашем html, где находится ваш div. Ваш идентификатор Div говорит «live-data» и в коде ajax, который вы упомянули, чтобы получить данные для div id «#live_data» вместо «# live-data». Может быть, изменение их на то же имя может решить вашу проблему. Я бы использовал для thr div id и в ajax такие же имена идентификаторов, как "#liveData".

Пример (тот же код, только что отредактированный до нужных идентификаторов, сравните с вашим оригиналом):

Ваш HTML div

<div class="body" id="liveData">
</div>

Ваш ajax код

$(document).ready( function() {
    function fetch_data() {  
        $.ajax({  
            url:"fetch.php",  
            method:"POST",  
            success:function(data){  
                $('#liveData').html(data);  
            }  
        });  
    }
    fetch_data(); 
});
0 голосов
/ 19 апреля 2020

Просто добавьте правильный идентификатор тега div в функцию sucess

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...