网络编程 
首页 > 网络编程 > 浏览文章

快速解决ajax传递为空但显示在页面上为undefined的问题

(编辑:jimmy 日期: 2024/11/28 浏览:3 次 )

昨天写代码遇到一个问题,这个问题以前也遇到过,只不过那时以为简单就没做什么笔记,结果昨天遇到还是要去查百度,查百度又要找好一会儿,所以就记录一下。避免以后忘记。

首先问题是这样的:我用ajax到动态的做表格插入,从后台传回来一个对象的list集合,然后进行遍历动态的生成表格的行。后台写的都正确的,结果表格有些内容为显示为undefined。后来我调试了一下发现ajax自动的把为空的字段设成了undefined。

//这是修改后的ajax代码
 $("#ss").click(function(){
    var key = $("#firstname").val();
    if(key==''){

     alert("请输入内容查询!");
     return;
    }
    $.ajax({
    url:'${pageContext.request.contextPath}/door/searchBykey.do',
    type:'post',
    dataType:'json',
    data:{'key':key},
    success:function(data){

     $("table>tbody>tr").remove();
     for(var i=0;i<data.length;i++){
      var count = i+1;
      var doors = data[i].door;
      var str = doors.replace(/\#/g,"%23"); 
      $("table>tbody").append(
         '<tr><td>'+count+'</td>'+ 
         '<td>'+ (data[i].build==undefined"":data[i].build)+'</td>'+
         '<td>'+ (data[i].room==undefined"":data[i].room)+'</td>'+
         '<td>'+ (data[i].door==undefined"":data[i].door)+'</td>'+
         '<td>'+ (data[i].conSn==undefined"":data[i].conSn)+'</td>'+
         '<td style="width:131px;">'+
          '<button type="button" class="btn btn-success" data-toggle="modal" data-target="#myModal2" onclick="updatebutton('+str+')">'+"修改"+'</button>'+
         '<button type="button" class="btn btn-danger" onclick="delButton('+data[i].id+')">'+"删除"+'</button>'+
         '</td>'+ 
         '</tr>'
      );




     }


    },
    error:function(){
     alert("请求失败!");
    }
    });


   });

这个问题的解决方法很简单 ,就是将你的值判断一下是否为undefined,如果为undefined的,就将这个值设置为空就好了

具体代码

(data[i].room==undefined"":data[i].room)

以上这篇快速解决ajax传递为空但显示在页面上为undefined的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

上一篇:基于ajax后台返回的数据为空前台显示出现undefined的解决方法
下一篇:解决ajax的delete、put方法接收不到参数的问题方法
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap