Невозможно отобразить Ajax данных в таблице - PullRequest
1 голос
/ 05 мая 2020

У меня есть веб-страница с двумя раскрывающимися меню, кнопкой поиска и таблицей, таблица получает информацию при загрузке с помощью jquery. При загрузке таблица захватывает информацию нормально. Но когда я использую раскрывающиеся меню и кнопку поиска для обновления этой таблицы, это не работает, как бы то ни было, информация есть в консоли ответа. Вот мой код

HTML Код

<div id="table"></div>

Jquery для таблицы загрузки

$(document).ready(function(){
    $.ajax({
        url: 'folder/list.php',
        success: function (data) {
            $('#table').html(data);
        },
        error: function(){
            alert('Error: Unable to display');
        }
    });

});

Jquery для поиска

$(document).on('click', '#cont-search', function(event) {
event.preventDefault();
var cate = $('#cat-search').val();
var city = $('#city-search').val(); //Important 

$.ajax({
        url: 'folder/list.php',
        type: 'post',
        dataType: 'json',
        data: {
                cate:cate,
                city:city,
            },
        success: function (data) {
            $('#table').html(data);
        },
        error: function(){
            alert('Error: Unable to display Search');
        }
    });});

PHP КОД

require_once('abc/Item.php');

$cat = $_POST['cate'];
$city = $_POST['city'];

$ser_cont = $item->search_cont($cat,$city);?><div class="table-responsive">
    <table id="myTable-item" class="table table-bordered table-hover table-striped">
        <thead>
            <tr>
                <th>S.No.</th>
                <th>Category</th>
                <th>R No.</th>
                <th>Name</th>
                <th>City</th>
             </tr>
        </thead>
        <tbody>
            <?php 
            $sno = 1;
            foreach($ser_cont as $c): ?>
                <tr align="center">
                    <td><?= $sno++; ?></td>
                    <td><?= $c['cate']; ?></td>
                    <td><?= $c['registno']; ?></td>
                    <td align="left"><?= $c['name']; ?></td>
                    <td><?= $c['dist']; ?></td>
</tr>
            <?php endforeach; ?>
        </tbody>
    </table>

Ответы [ 3 ]

0 голосов
/ 05 мая 2020

можно попробовать, изменив метод действия на onchange

$(document).on('change', '#cont-search', function(event) {
// your event
}
0 голосов
/ 05 мая 2020

Я решил проблему, так как это не было json возврата, поэтому я просто удалил

dataType: 'json',

из своего кода, и он сработал, спасибо всем за комментарии

0 голосов
/ 05 мая 2020

это работает для меня: html код:

 <head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
</head> 
<button type="button" id="btnmain" onclick="editMenu()"   >
                        Edit
                        </button>

мой код для редактирования таблицы:

function editMenu() {
    alert();
    var form_data = new FormData();
    //this is my edit id that i want to edit
    form_data.append("ID",$('#id_table').val());
    $.ajax({
        url: 'assets/editMenu.php', // point to server-side PHP script
        dataType: 'text',  // what to expect back from the PHP script, if anything
        cache: false,
        contentType: false,
        processData: false,
        data: form_data,
        type: 'post',
        success: function (php_script_response) {
                       alert(php_script_response);//do sometings
        }
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...