我试图在ajax调用的成功函数中触发警报。问题是它持续触发相同的警报,似乎无法识别数据字符串值。
在我的示例中,持续触发的警报是yes
警报。我可以在firebug中看到php返回的值是我想要比较的。我很困惑为什么这个简单的功能不起作用,需要在开始主编码之前找到解决方案。如果有人可以帮助我,我将不胜感激。非常感谢
AJAX
success: function(data) {
if (data == 'No Date Set') {
alert('No');
}
else {
alert('yes');
}
}
PHP
if($ddate =='No Date Set') {
echo $ddate;
}
ajax代码段
$.ajax({
type: 'POST',
url: 'niajax.php',
data: data,
async: false,
beforeSend: function() {
$(".text").show().html('Processing your request...');
},
success: function(data) {
console.log(data);
if (data == 'No Date Set') {
alert('Date not set');
}
else {
alert('Date set');
}
},
error: function(xhr) {
$(".text").fadeIn(4000).html('Error occured.please try again').fadeOut(4000);
//alert("Error occured.please try again");
},
complete: function() {},
})
答案 0 :(得分:2)
问题不明确,但可能是由于空格,您可以trim
返回数据:
success: function(data)
if (data.trim() == 'No Date Set') {
alert('Date not set');
}
else {
alert('Date set');
}
},
答案 1 :(得分:-1)
使用true
或false
或创建一个单词status
,而不是设置长文本。
上述惯例有时可能含糊不清,比较需要一些时间。