блоки данных ajax не реагируют

#php #ajax

#php #ajax

Вопрос:

Я извлекаю данные из базы данных с помощью ajax, но я немного запутался, как показать здесь кнопку удаления. вот мой код ajax.

  var ajax = new XMLHttpRequest();
    ajax.open("GET", "ajax/fetch_notify.php", true);
    ajax.send();
 
    ajax.onreadystatechange = function() {
        if (this.readyState == 4 amp;amp; this.status == 200) {
            var data = JSON.parse(this.responseText);
            console.log(data);
 
            var html = "";
            var delete_notify = $('#delete_notify')
            for(var a = 0; a < data.length; a  ) {
                var id = data[a].id;
                var date = data[a].date;
                var notify_alert = data[a].notify_alert;
                var fa_icon = data[a].fa_icon;
                var bg_color = data[a].bg_color;
                html  = "<tr>";
                    html  = "<td>"   id   "</td>";
                    html  = "<td>"   date   "</td>";
                    html  = "<td>"   notify_alert   "</td>";
                    html  = "<td>"   fa_icon   "</td>";
                    html  = "<td>"   bg_color   "</td>";
                    html  = "<td>"   delete_notify  "</td>";
                html  = "</tr>";
            }
            document.getElementById("data").innerHTML  = html;
        }
    };
  

вот мой код кнопки удаления.

 <td>
<form action="" method="POST">
<input type="hidden" id="notify_id" name="notify_id" value="<?php echo $row['id'];?>">
<button type="submit" id="delete_notify" name="delete_notify" class="btn btn-danger"><i class="fa fa-trash" aria-hidden="true"></i></button></form>
</td>
  

Комментарии:

1. Приведенный выше код не является ajax ( w3schools.com/xml/ajax_intro.asp ), это javascript. Я вижу, что переменная ‘Delete’ используется в вашем цикле построения таблиц, но не вижу, чтобы она где-либо определялась. Не могли бы вы обновить свой пример кода?

2. Нет переменной с именем Delete , я просто поставил ее для сообщения.

3. Теперь я вставляю полный код.

4. ‘var delete_notify = $(‘#delete_notify’)’, это jquery. Используете ли вы jquey в этом проекте? Все остальное, похоже, написано на vanilajs.

5. var delete_notify = $('#delete_notify') я не использую его в своем коде, который я просто поместил здесь для справки.

Ответ №1:

Однако ваш код мне непонятен, что я могу предложить, основываясь на моих предположениях о вашем коде.

 $('#delete_notify') 
  

Это код jquery, который обращается только к этой кнопке

 <button type="submit" id="delete_notify" name="delete_notify" class="btn btn-danger"><i class="fa fa-trash" aria-hidden="true"></i></button>
  

Вы должны поместить кнопку в форму, чтобы форма была отправлена.

Комментарии:

1. Я думаю, что <form action="" method="POST"> это форма 🙂

2. <form action=»» method=»POST»> это может использоваться в другом примере… потому что ясно, что форма была сгенерирована в итерации цикла php… он пытается применить аналогичный код в JS. Насколько код понятен, он просто вставляет кнопку удаления, а не форму.