检查AJAX响应数据是否为空/空白/null/未定义/0
Check if AJAX response data is empty/blank/null/undefined/0
我有什么:
我有jQuery AJAX函数,查询数据库后返回HTML。根据查询的结果,该函数要么返回HTML代码,要么什么都不返回(即空白)。
我需要什么:
我需要有条件地检查数据何时为空白。
我的代码:
$.ajax({
type:"POST",
url: "<?php echo admin_url('admin-ajax.php'); ?>",
data: associated_buildsorprojects_form,
success:function(data){
if(!data){
//if(data="undefined"){
//if(data==="undefined"){
//if(data==null){
//if(data.length == 0){
//if ( data.length != 0 ){
//if(data===0){
//if(data==="0"){
alert("Data: " + data);
}
},
error: function(errorThrown){
alert(errorThrown);
alert("There is an error with AJAX!");
}
});
我的问题:
我尝试了各种条件,但没有一个正确检查数据。根据我的发现,空白警报消息并不意味着数据是
- 空
- <
- 不存在/gh>
- 等于零 长度为0的
- 零>
- 定义
如果这些都不是,那么我如何有条件地检查产生空白警报消息的数据?
Felix Kling在问题的评论部分给出了以下正确答案:
if (!$.trim(data)){
alert("What follows is blank: " + data);
}
else{
alert("What follows is not blank: " + data);
}
//if(data="undefined"){
这是一个赋值语句,不是比较语句。同样,"undefined"
是一个字符串,它是一个属性。if (data === undefined)
(没有引号,否则是一个字符串值)
如果没有定义,则可能返回一个空字符串。您可以尝试检查falsy
值,如if (!data)
if(data.trim()==''){alert("Nothing Found");}
这对我来说很有效。PHP代码在page.php
$query_de="sql statements here";
$sql_de = sqlsrv_query($conn,$query_de);
if ($sql_de)
{
echo "SQLSuccess";
}
exit();
,然后AJAX代码下面有
jQuery.ajax({
url : "page.php",
type : "POST",
data : {
buttonsave : 1,
var1 : val1,
var2 : val2,
},
success:function(data)
{
if(jQuery.trim(data) === "SQLSuccess")
{
alert("Se agrego correctamente");
// alert(data);
} else { alert(data);}
},
error: function(error)
{
alert("Error AJAX not working: "+ error );
}
});
注意:单词'SQLSuccess'必须从PHP接收
$.ajax({
type:"POST",
url: "<?php echo admin_url('admin-ajax.php'); ?>",
data: associated_buildsorprojects_form,
success:function(data){
// do console.log(data);
console.log(data);
// you'll find that what exactly inside data
// I do not prefer alter(data); now because, it does not
// completes requirement all the time
// After that you can easily put if condition that you do not want like
// if(data != '')
// if(data == null)
// or whatever you want
},
error: function(errorThrown){
alert(errorThrown);
alert("There is an error with AJAX!");
}
});
相关文章:
- 数组在递归方法中设置为null
- 如何删除多行HTML排列中的空白
- 在Twitter上用ie9中的空白src访问iframe的contentWindow
- 不同浏览器中的空白字符正则表达式行为
- Javascript中的空白是什么
- Facebook共享显示一个接一个的空白页面
- 如果我在javascript中输入无效的电子邮件或空白,如何显示特定的文本框边框红色
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 无法获取属性'selectedIndex'的未定义引用或null引用
- Meteor方法在客户端返回null,在客户端运行的相同方法返回正确的值
- 来自文本输入null的html javascript变量
- delete在Object上效率低下,但在DOM Element's的数据属性,与null out相比
- php代码在textbox更改事件上显示null
- 相同的RegExp返回不同的结果-第一次是正确的结果,第二次是null
- XMLHttpRequest 的响应文本在 Mozilla 中为 null(空白)
- 当结果集为null时,JasperRunManager.runReportToPdfStream返回一个空白pdf
- 使用jquery或javascript显示null cookie值为空白空间
- Javascript变量未解析,显示为空白或null
- 检查AJAX响应数据是否为空/空白/null/未定义/0
- 如何在ng-option中有一个空白值,而不是NULL