Com validar una varible indefinidad jQuery ?

Estic enviant uns paràmetres per ajax a php i aquest em respon per mitjà de json vàries de les respostes , ja que en la funció de l’ php es troben diverses peticions a el model per portar un count per sentència sql .

el problema està en que la resposta de l’ ajax si hi ha una dada buit el declara com a indefinida .

i la idea és que em carregui aquests count per variable en botó amb badge .

CODI JS

$('#Competencias').change(function(event) { IdCompetencia = $(this).val(); var cadena = {'IdPeriodo' : IdPeriodo}; cadena.IdSede = IdSede, cadena.AreaEmpleado = AreaEmpleado, cadena.IdCompetencia = IdCompetencia, $.post('EscalaCualitativaEmpleados', cadena , function(data) { var resultado = $.parseJSON(data); console.info(resultado.rendimientoalto ); if(typeof(resultado.rendimientobajo === 'undefined') && typeof(resultado.rendimientomedio === 'undefined') && typeof(resultado.rendimientoalto === 'undefined')) { $('#oculto').fadeIn("slow"); $('#CountResultCompetenciaButtons').html('<button type="button" class="btn btn-danger" style="margin: 10px 10px 10px 10px;">Bajo <span class="badge">0</span></button>' + '<button type="button" class="btn btn-warning" style="margin: 10px 10px 10px 10px;">Medio <span class="badge">0</span></button>' +'<button type="button" class="btn btn-success" style="margin: 10px 10px 10px 10px;">Alto <span class="badge">0</span></button>'); } else if(typeof(resultado.rendimientobajo === 'undefined') && typeof(resultado.rendimientomedio === 'undefined')) { $('#oculto').fadeIn("slow"); $('#CountResultCompetenciaButtons').html('<button type="button" class="btn btn-danger" style="margin: 10px 10px 10px 10px;">Bajo <span class="badge">0</span></button>' + '<button type="button" class="btn btn-warning" style="margin: 10px 10px 10px 10px;">Medio <span class="badge">0</span></button>' +'<button type="button" class="btn btn-success" style="margin: 10px 10px 10px 10px;">Alto <span class="badge">' + resultado.rendimientoalto + '</span></button>'); } else if(typeof(resultado.rendimientomedio === 'undefined') && typeof(resultado.rendimientoalto === 'undefined')) { $('#oculto').fadeIn("slow"); $('#CountResultCompetenciaButtons').html('<button type="button" class="btn btn-danger" style="margin: 10px 10px 10px 10px;">Bajo <span class="badge">' + resultado.rendimientobajo + '</span></button>' + '<button type="button" class="btn btn-warning" style="margin: 10px 10px 10px 10px;">Medio <span class="badge">0</span></button>' +'<button type="button" class="btn btn-success" style="margin: 10px 10px 10px 10px;">Alto <span class="badge">0</span></button>'); } else if(typeof(resultado.rendimientoalto === 'undefined') && typeof(resultado.rendimientobajo === 'undefined')) { $('#oculto').fadeIn("slow"); $('#CountResultCompetenciaButtons').html('<button type="button" class="btn btn-danger" style="margin: 10px 10px 10px 10px;">Bajo <span class="badge">0</span></button>' + '<button type="button" class="btn btn-warning" style="margin: 10px 10px 10px 10px;">Medio <span class="badge">' + resultado.rendimientomedio + '</span></button>' +'<button type="button" class="btn btn-success" style="margin: 10px 10px 10px 10px;">Alto <span class="badge">0</span></button>'); } else { $('#oculto').fadeIn("slow"); $('#CountResultCompetenciaButtons').html('<button type="button" class="btn btn-danger" style="margin: 10px 10px 10px 10px;">Bajo <span class="badge">' + resultado.rendimientobajo + '</span></button>' + '<button type="button" class="btn btn-warning" style="margin: 10px 10px 10px 10px;">Medio <span class="badge">' + resultado.rendimientomedio + '</span></button>' +'<button type="button" class="btn btn-success" style="margin: 10px 10px 10px 10px;">Alto <span class="badge">' + resultado.rendimientoalto + '</span></button>'); } }); 

ERROR

prueba.js:171 Uncaught TypeError: Cannot read property 'rendimiento_bajo' of undefined at Object.success (prueba.js:171) at c (jquery-1.10.2.min.js:4) at Object.fireWith (jquery-1.10.2.min.js:4) at k (jquery-1.10.2.min.js:6) at XMLHttpRequest.r (jquery-1.10.2.min.js:6)

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *