PHP нажатие кнопки
Как обработать нажатие кнопки и выполнить то или иное действие, кнопка добавить комментарий
код страницы
id="send">Отчет</button></th>
</table>
<div id = "welcome">sas</div>
<script>
//после загрузки DOM-дерева страницы
document.addEventListener("DOMContentLoaded",function() {
//получить кнопку
let send = document.getElementById('send');
//подписаться на событие click по кнопке и назначить обработчик, который будет выполнять действия, указанные в безымянной функции
send.addEventListener("click", function(){
//1. Сбор данных, необходимых для выполнения запроса на сервере
let date_from = document.getElementById('date_from').value;
let date_to = document.getElementById('date_to').value;
//Подготовка данных для отправки на сервер
//т.е. кодирование с помощью метода encodeURIComponent
date_from = 'date_from=' + encodeURIComponent(date_from)+ '&date_to=' + encodeURIComponent(date_to);
// 2. Создание переменной request
let request = new XMLHttpRequest();
// 3. Настройка запроса
request.open('POST','xz.php',true);
// 4. Подписка на событие onreadystatechange и обработка его с помощью анонимной функции
request.addEventListener('readystatechange', function() {
//если запрос пришёл и статус запроса 200 (OK)
if ((request.readyState==4) && (request.status==200)) {
// например, выведем объект XHR в консоль браузера
console.log(request);
// и ответ (текст), пришедший с сервера в окне alert
console.log(request.responseText);
// получить элемент c id = welcome
let welcome = document.getElementById('welcome');
// заменить содержимое элемента ответом, пришедшим с сервера
welcome.innerHTML = request.responseText;
}
});
// Устанавливаем заголовок Content-Type(обязательно для метода POST). Он предназначен для указания кодировки, с помощью которой зашифрован запрос. Это необходимо для того, чтобы сервер знал как его раскодировать.
request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
// 5. Отправка запроса на сервер. В качестве параметра указываем данные, которые необходимо передать (необходимо для POST)
request.send(date_from);
});
});
</script>
</body>
</html>
код обработчика
<?php
foreach ($json as $key => $value) {
if (strpos($key, 'Data') !== false){
echo '<tr>
<td></td> <td></td>
<td>'.str_replace("smd/", "",$value["id"]).'</td>
<td>'.$value["all_events"].'</td>
<td>'.$value["successfully"].'</td>
<td>'.round((int)$value["successfully"]/(int)$value["all_events"]*100,2).'</td>
<td>'.$value["repeated"].'</td> <td>'.round((int)$value["repeated"]/(int)$value["all_events"]*100,2).'</td>
<td>'.((int)$value["successfully"]+(int)$value["repeated"]).'</td>
<td>'.round(((int)$value["successfully"]+(int)$value["repeated"])/(int)$value["all_events"]*100,2).'</td>
<td>'.((int)$value["all_events"]-(int)$value["successfully"]+(int)$value["repeated"]).'</td>
<td>'.round(((int)$value["successfully"]+(int)$value["repeated"])/(int)$value["all_events"]*100,2).'</td>
<td>asdasdads<br><input type="button" name="'.str_replace("smd/", "",$value["id"]).'" id="comment" value="Добавить коментарий"></td>
</tr>';
Конечная задача в следующем, по нажатию кнопки создается таблица на сервере и возвращается в клиентскую часть, в таблице в последних столбцах расположены кнопки, как написать обработчик этих кнопок