快速解决ajax传递为空但显示在页面上为undefined的问题
作者:我要在家里
今天小编就为大家分享一篇快速解决ajax传递为空但显示在页面上为undefined的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
昨天写代码遇到一个问题,这个问题以前也遇到过,只不过那时以为简单就没做什么笔记,结果昨天遇到还是要去查百度,查百度又要找好一会儿,所以就记录一下。避免以后忘记。
首先问题是这样的:我用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的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。