我使用$ .post()方法进行AJAX调用,并想知道如何检查返回值是否为空。
这是代码:
$.post(site_url, function(data) {
if(!data) {
alert('Nope');
} else {
alert('Yay');
}
});
但是,这是行不通的。我也尝试过检查,如果该对象为空或==“”,但仍然没有效果..
编辑
data.length所做的工作!谢谢,伙计们
我使用$ .post()方法进行AJAX调用,并想知道如何检查返回值是否为空。
这是代码:
$.post(site_url, function(data) {
if(!data) {
alert('Nope');
} else {
alert('Yay');
}
});
但是,这是行不通的。我也尝试过检查,如果该对象为空或==“”,但仍然没有效果..
编辑
data.length所做的工作!谢谢,伙计们
你可以试试这个
typeof(data.responseText) === null
试试这个:
$.post(site_url, function(data) {
if(!empty(data)) {
alert('Yay');
} else {
alert('Nope');
}
});
什么是'empty()'? – zerkms
'!empty'表示不为空 –
试试这个。
$.post(site_url, function(data,status) {
alert("Status="+status);
});
这将显示Ajax请求的状态( “成功”, “notmodified”, “错误”, “超时” 或 “parsererror”)
试试这个:
如果与ajax响应字符串比较失败,然后尝试在ajax响应中发送数值并进行比较。
**demo.php**
<php
$temp = some_function();
//If the function returns null then send 1, else the value returned
if(temp!='')
echo 1;
else
echo $temp;
?>
$.post(demo.php, function(data) {
if (data != 1)
{
alert('null');
}
else
{
alert(data);
}
});
是什么让你说它是空的? – Blender
这取决于你得到的数据。但大多数情况下,检查'null'或检查'length'会溢出beans – krishgopinath
使用空字符串或请求的空结果不是一个好习惯。你应该总是有一个明确的结果。例如,如果没有结果,你可以有一个空数组,然后检查JS中的长度。 –