Valor null en datos obtenidos de JSON

publicado por: Anonymous

Tengo un script que recupera la información de un JSON como puedo poner para que si no tiene nada el JSON no ponga nada en la variable items. Este es mi código:

<script type="text/javascript">
        $(function () {
            $("#IdPlantel").change(function () {
                $.getJSON("Oferta/List/" + $("#IdPlantel>option:selected").attr("value"), function (data) {
                    var items;
                    if (data == null) {// no lo respeta
                        items = "";
                    }
                    else {
                        $.each(data, function (i, state) {
                            items += "<option value='" + state.Value + "'>" + state.Text + "</option>";
                        });
                    }

                    $("#States").html(items);
                });
            });
        });
    </script>

solución

Dudo que un servidor devuelva una respuesta nula. Lo más probable es que el servidor mande una respuesta vacía. Por tanto, intenta evaluando si data es una cadena vacía. Esta es una manera:

if (data === "") {
    //...
} else ...

Otra forma:

if (data.length === 0) {
    //...
} else ...

En caso que quieras evaluar si data es nulo, utiliza esta evaluación:

if (data) {
    //...
} else ...
Respondido por: user227

Leave a Reply

Your email address will not be published. Required fields are marked *