不能在'中使用'运营商搜索'长度'在假

时间:2017-10-31 20:10:32

标签: javascript jquery ajax

我试图用其他主题的答案解决这个问题,但我不能,我的浏览器控制台中只有一个错误,但一切正常:

Uncaught TypeError: Cannot use 'in' operator to search for 'length' in 
false

这是我的JS:

$("select[name=categoria]").change(function(){
    valorBuscar = $(this).val();
    mostrarDatos2(valorBuscar);
 });

}

function mostrarDatos2(valorBuscar){

  $.ajax({
    url : "http://localhost/empresa/CategoriaC/mostrarCat",
    type: "POST",
    data: {categoria: valorBuscar},
    dataType:"json",

    success:function(response){
        filas = "";
        $.each(response.cat,function(key,item){ //<= here is the error
            filas+="<tr><td><input type='checkbox' id='check' 
            value="+item.correo+"></td><td>"+item.contacto+"<br 
            />"+item.correo+"<br />"+item.nombre_empresa+"</td></tr>";
           });
           $("#tbclientes tbody").html(filas);

         }
      });

   }

1 个答案:

答案 0 :(得分:0)

$.each必须仅用于对象 首先检查它是否是一个对象 类似问题:Uncaught TypeError: Cannot use 'in' operator to search for 'length' in

编辑:如果你把整个东西放在if()语句中,那么加载错误会消失吗?

if( typeof response.cat == "object" ){ $.each(response.cat,function(key,item){ ... } }