我正在使用 $.post
发送 Ajax 请求。服务器端 PHP
是正确的。但是回调和 PHP
不工作!!
Ajax 请求:
$("#exit").click(function(){
swal({
title: "exit",
text: "Are you sure???",
type: "info",
animation: "slide-from-top",
confirmButtonText:"Yes",
cancelButtonText: "No",
showCancelButton: true,
closeOnConfirm: false,
showLoaderOnConfirm: true,
},
function(){
$.post("send.php",{method:'del',id:$("#hidden").val(),answerer:$("#hidden3").val()},function(data){
alert(data);
});
});
});
和PHP:
if($method==='del'){
$qs_id=htmlentities($_POST['id']);
$answerer=htmlentities($_POT['answerer']);
include('config.php');
$conn=new PDO("mysql:host=$servername;dbname=$dbname;charset=utf8;",$username,$password);
$conn->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$DeleteQs=$conn->prepare("DELETE FROM qs WHERE id=:id");
$DeleteQs->bindParam(':id',$qs_id);
$DeleteQs->execute();
$DeleteAnswer=$conn->prepare("DELETE FROM ans WHERE q_id=:id");
$DeleteAnswer->bindParam(':id',$qs_id);
$DeleteAnswer->execute();
$ChangeStatus=$conn->prepare("UPDATE register SET wanted=0 WHERE name=:answerer");
$ChangeStatus->bindParam(':answerer',$answerer);
$ChangeStatus->execute();
echo "Deleted";
}
我想我应该说我收到了 alert()
但它不包含在 PHP
消息中。
我没有收到任何错误!
对不起,如果我的问题很愚蠢:(
最佳答案
此问题可能发生在 jQuery V1.8 及更高版本中,也许此语法可以:
$.post("send.php",{method:'del',id:$("#hidden").val(),answerer:$("#hidden3").val()})
.done(function(response){
alert(response)
})
.fail(function(response){
alert("Failed:"+response);
})
关于php - Ajax 状态为 `success` 但回调无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32040936/