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)