时间:2021-12-07 12:23:33 | 栏目:JavaScript代码 | 点击:次
出现这个问题的原因是因为后台传给前台的数据出现了问题,ajax对于json的格式特别的严格
下面是会出现这个问题的ajax请求
$.ajax({ type:'get', url:"{php echo $this->createWebUrl('ajax',array('ac'=>'cunByXiangId'))}", data:{id:id}, dataType:'json',//这个地方是问题的关键所在 success:function(obj){ },error: function(XMLHttpRequest, textStatus, errorThrown) { alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); } });
问题主要是出在了dataType:'json',这行代码,这行代码的意思就是接收回传的数据为json格式。这个时候,我们只需要删除这段代码,就会接收到字符串格式的
数据,然后再进行转换成json格式,下面是代码
$.ajax({ type:'get', url:"{php echo $this->createWebUrl('ajax',array('ac'=>'cunByXiangId'))}", data:{id:id}, success:function(obj){ obj=eval('('+obj+')');//这段代码就是将字符串转换成json格式 },error: function(XMLHttpRequest, textStatus, errorThrown) { alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); } });