Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查对象内的空值_Javascript_Jquery_Asp.net - Fatal编程技术网

Javascript 检查对象内的空值

Javascript 检查对象内的空值,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,因此,我想将数据库中的这些行显示为一个表,并不是所有列都已填充,有些行的column3或columnX为null if(datos[i].column1== "" || datos[i].column1== null) datos[i].column1= "-"; if(datos[i].column2== "" || datos[i].column2== null)

因此,我想将数据库中的这些行显示为一个表,并不是所有列都已填充,有些行的column3或columnX为null

if(datos[i].column1== "" || datos[i].column1== null)
                        datos[i].column1= "-";
                    if(datos[i].column2== "" || datos[i].column2== null)
                        datos[i].column2= "-";
                    if(datos[i].column3== "" || datos[i].column3== null)
                        datos[i].column3= "-";
                    if(datos[i].column4 == "" || datos[i].column4 == null)
                        datos[i].column4 = "-";
                    if(datos[i].column5 == "" || datos[i].column5== null)
                        datos[i].column5 = "-";
                    if(datos[i].column6 == "" || datos[i].column6 == null)
                        datos[i].column6 = "-";
                    if(datos[i].column7 == "" || datos[i].column7== null)
                        datos[i].column7= "-";
                    s+='<tr>'+
                       ' <td data-type="1">'+ datos[i].column1 + '</td>' +
                       ' <td data-type="2">'+ datos[i].column2 + '</td>' +
                       ' <td data-type="3">'+ datos[i].column3 + '</td>' +
                       ' <td data-type="4">'+ datos[i].column4 + '</td>' +
                       ' <td data-type="5">'+ datos[i].column5 + '</td>' +
                       ' <td data-type="6">'+ datos[i].column6.substr(0, 10) + '</td>' +
                       ' <td data-type="7">'+ datos[i].column7.substr(0, 10) + '</td>' +
                       ' <td data-type="8">'+ datos[i].column8.substr(0, 10) + '</td>' +
                       ' <td data-type="9">'+ datos[i].column9+ '</td>' +
                       ' <td data-type="10">'+ datos[i].column10+ '</td>' +
                       ' <td data-align="center"><p data-placement="top"><button class="btn btn-primary btn-xs" onclick=LlenaDatos("' + datos[i].column2+ '")><span class="glyphicon glyphicon-pencil"></span></button></p></td> ' +
                       '</tr>';
if(datos[i].column1==“datos[i].column1==null)
datos[i]。第1列=“-”;
if(datos[i].column2==“”| | datos[i].column2==null)
datos[i]。第2列=“-”;
if(datos[i].column3==“”| | datos[i].column3==null)
datos[i]。第3列=“-”;
if(datos[i].column4==“”| | datos[i].column4==null)
datos[i]。第4列=“-”;
if(datos[i].column5==“”| | datos[i].column5==null)
datos[i]。第5列=“-”;
if(datos[i].column6==“”| | datos[i].column6==null)
datos[i]。第6列=“-”;
if(datos[i].column7==“”| | datos[i].column7==null)
datos[i]。第7列=“-”;
s+=''+
''+datos[i].第1列''+
''+datos[i].第2列''+
''+datos[i].第3列''+
''+datos[i].第4列''+
''+datos[i].第5列''+
''+datos[i].第6列.子字符串(0,10)+''+
''+datos[i].第7列.子序列(0,10)+''+
''+datos[i].第8列.子字符串(0,10)+''+
''+datos[i].第9列''+
''+datos[i].第10列''+
“

”+ '';
我觉得这看起来很野蛮,我希望用一种不太原始的方法来检查所有列是否为空或为空,并让它们显示为破折号。

试试这个:

s += '<tr>';
$.each(datos[i], function(key, val){
   if(!val)
      datos[i][key] = "-";
   s += ' <td data-type="1">'+ datos[i][key] + '</td>';
});
s += '<td data-align="center"><p data-placement="top"><button class="btn btn-primary btn-xs" onclick=LlenaDatos("' + datos[i].column2+ '")><span class="glyphicon glyphicon-pencil"></span></button></p></td></tr>';
s+='';
$。每个(datos[i],函数(键,值){
如果(!val)
datos[i][key]=“-”;
s+=''+datos[i][key]+'';
});
s+='


现在,您可以在一个循环中完成所有操作。

如果字符串为null或空,您可以使用
|
操作符返回其他内容,而不是修改数据

...
' <td data-type="1">'+ (datos[i].column1 || '-') + '</td>' +
' <td data-type="2">'+ (datos[i].column2 || '-') + '</td>' +
...
。。。
''+(datos[i].第1列| |'-')+''+
“+(datos[i].第2列| |”-”)+”+
...

那么,您的代码可以工作,但您想改进它吗?如果是这样的话,也许会是一个更好的地方。我不知道这一点:好吧,现在我会知道未来的问题,比如这个,是的,代码工作,我只是不知道如何循环它,不必像我做的那样写块。谢谢大家~