如何在使用PHP和jQuery成功发布表单时显示警报?
jQuery模式执行得很好,但我不知道当php成功执行表单时,如果我想显示一条警告消息,我缺少了什么如何在使用PHP和jQuery成功发布表单时显示警报?,php,jquery,Php,Jquery,jQuery模式执行得很好,但我不知道当php成功执行表单时,如果我想显示一条警告消息,我缺少了什么 $.post( 'name.php', { ime: ime, location: location }, function(data){ if (data.success) { alert("form posted!"); } else {
$.post(
'name.php',
{ ime: ime, location: location },
function(data){
if (data.success) {
alert("form posted!");
}
else {
$("#dialog-form").dialog("open");
}
},
"json"
);
===========================================PHP============
if ($result == false) {
echo json_encode(array('success' => false, 'result' => 0));
exit;
}
echo json_encode(array('success' => true, 'result' => $result));
$sql2 = "DELETE FROM $names WHERE name='$ime'";
$result2 = mysql_query($sql2);
success有3个参数
success(data、textStatus、jqXHR)
我相信您可能需要textStatus
.success:
请求成功时要调用的函数。该函数得到
传递了三个参数:从服务器返回的数据,已格式化
根据数据类型参数描述状态的字符串;
和jqXHR(在jquery1.4.x中,XMLHttpRequest)对象
看起来好像
data.success
的值没有返回为true或false(或者像您期望的那样作为布尔值求值)
尝试:
))
您还可以使用FIDDLER
查看从服务器返回的值
检查控制台中的响应,确保数据按预期返回。我已在下面的控制台中发布了结果。感谢您的回复。根据您的更改了代码。如果控制台中的数据库中不存在记录,我得到:结果:0,成功:false。如果它确实存在于控制台中,我会得到以下信息:{“success”:true,“result”:[“67”,“John”,“London”]}仍然不会发出警报,只是执行查询。
$.post(
'name.php',
{ ime: ime, location: location },
function(data, textStatus, jqXHR){
if (textStatus == "success") {
alert("form posted!");
}
else {
$("#dialog-form").dialog("open");
}
},
"json"
);
$.post(
'name.php',
{ ime: ime, location: location },
function(data){
if (data.success == 'true') {
alert("form posted!");
}
else {
$("#dialog-form").dialog("open");
}
},
"json"