我正在关注AJAX的在线教程。有关如何从表中删除行而不重新加载它的讲座。
我为HTML表格中的每一行添加了一个删除按钮,并在id="del"
的表格中将其ID设置为id="myTable"
。
我正在尝试使用Ajax
删除一行并删除它而不使用动画fadeOut()
进行刷新。
我有这个Ajax
脚本:
$("#myTable #del").click(function()
{
if(confirm("Are you sure you want to delete this row ?"))
{
var id = $(this).closest('tr').attr('id');
var row = $(this).closest('tr');
$.ajax
({
url: 'delete_row.php',
type: 'POST',
data: {dataID: id},
dataType: "text",
success:function(data)
{
console.log(id);
if(data=="deleted")
{
row.fadeOut('slow', function() {$(this).remove();});
}
}
});
}
});
在控制台中,我看到显示了正确的ID,但它既没有从表中消失也没有从数据库中删除。
这是PHP代码:
try
{
$id = $_POST['dataID'];
$delete = "DELETE FROM employee WHERE id = :d";
$delStmt = $conn->prepare($delete);
$delStmt->bindValue(":id", $id);
$delStmt->execute();
echo "deleted";
}
catch(PDOException $m)
{
$m->getMessage();
echo "error";
}
教师代码工作正常,我无法查看错误的位置,因此它不适合我。任何帮助表示赞赏。
答案 0 :(得分:0)
绑定值在PDO请求中没有相同的名称
$delete = "DELETE FROM employee WHERE id = :d";
$delStmt->bindValue(":id", $id);