我确定这是一个简单的解决方案,但是我的尝试没有成功,因为我的jQuery& ajax并不是最伟大的。我正在对我的php脚本进行ajax调用,该脚本正在对表单进行错误检查。如果有错误,我显示一个隐藏的div并显示错误消息没问题。但是,如果没有错误消息,我想要出现警报。问题是没有错误时警报不会显示
Javacript
$.ajax({
url: '../assets/inc/process.php',
type: 'post',
data: formData,
dataType: 'html'
})
.always(function(data){
if (data == 'success'){
alert('it worked!');
}
else{
$('#responsediv').show();
$('#responsediv').html(data);
}
});
});
我也试过
if (data.success == 'success'){
alert('it worked!');
}
else{
$('#responsediv').show();
$('#responsediv').html(data);
}
PHP
if ($result_new_row){
$success = 'success';
echo $success;
}
我确信我正在插入新行,因为我可以在数据库中看到它。
感谢任何帮助。谢谢!
答案 0 :(得分:0)
将数据作为数组从PHP传回(PS数据类型应为json)
PHP
if ($result_new_row){
$return['result'] = 'success';
//comment this out when you are positive it's working
echo "hello";
} else {
$return['result'] = 'error';
}
print(json_encode( $return);
的jQuery
$.ajax({
url: '../assets/inc/process.php',
type: 'post',
data: formData,
dataType: 'json'
})
.always(function(data){
if (data.result == 'success'){
alert('it worked!');
} else {
$('#responsediv').show();
$('#responsediv').html(data);
}
});
});
如果没有正确返回,请确保您的PHP功能实际上正常工作。
如果您使用Chrome,则可以通过打开检查器并切换到网络标签来查看您的AJAX调用,然后单击XHR将显示每个AJAX请求,正在发送的内容和响应。