<?php
while ($row = mysqli_fetch_array($select)) {
?>
<tr id="<?php echo $row['id'] ?>">
<td><?php echo $name=($row['name']) ?></td>
<td><?php echo $row['desc'] ?></td>
<td><?php echo $row['pages'] ?></td>
<td><?php echo $row['price'] ?></td>
<td><?php $start_date = new DateTime( $row['add']);
$since_start = $start_date->diff(new DateTime(NOW));
$minutes = $since_start->days * 24 * 60;
$minutes += $since_start->h * 60;
$minutes += $since_start->i;
echo $minutes.' Минут назад' ?></td>
<td><button class="delete">Delete</button></td>
</tr>
<?php } ?>
</table>
<script type="text/javascript">
$(".delete").click(function(){
var id = $(this).parents("tr").attr("id");
var name = $(this).parents("tr").attr("name");
if(confirm('Вы уверены что хотите удалить?'))
{
$.ajax({
url: '/delete.php',
type: 'GET',
data: {id: id, name: name},
error: function() {
alert('Что-то пошло не так');
},
success: function(data) {
$("#"+id).remove();
alert("Удаление успешно"+(name)); // Как заставить выдавать name?
}
});
}
});
</script>
Не могу понять, что нужно сделать, все остальное отлично работает.
З.Ы. Если вдруг кому-то нужно удаление из mysql с помощью ajax, пользуйтесь, код рабочий!
Вот так нужно было сделать:
var name = $(this).parents("tr").children("td").eq(0).text();
Теперь все корректно работает.
alert("Удаление успешно" + id);
У Вашего tr-а нет атрибута name.
но как чему нибудь присвоить атрибут name?
<tr id="<?php echo $row['id'] ?>" name="myname">
Но лучше:
<tr id="<?php echo $row['id'] ?>" data-name="myname">
и
var name = $(this).closest("tr").data("name");
Продвижение своими сайтами как стратегия роста и независимости