JQuery Reto Lista de invitados

Hola! Como están?

Estoy tratando de enviar mi solución para este reto, pero me sigue saliendo el error El formulario debería agregar una nueva fila en la tabla al crear un nuevo invitado: 0

Yo veo la solucion funcionando sin problema y el DOM aparece con el . Este es mi codigo:

function hasWhiteSpace(s) {
  return s.indexOf(' ') >= 0;
}

$("#mobile-number").keypress(function (e) {    
  var charCode = (e.which) ? e.which : e.keyCode    
  if (String.fromCharCode(charCode).match(/[^0-9]/g))    
      return false;                        
});

$("form").on("submit", function(e) {
  e.preventDefault();
  
  let nombre = $("#first-name").val();
  let apellido = $("#last-name").val();
  let celular = $("#mobile-number").val();
  let confirmado = $("#confirmed").is(":checked");
  let todoOk = true;

  if( !nombre) {
    $("#first-name").parents(".form-group").addClass("has-error");
    todoOk = false;
  } 
  else {
    $("#first-name").parents(".form-group").removeClass("has-error");
    todoOk = true;
  }

  if( !apellido) {
    $("#last-name").parents(".form-group").addClass("has-error");
    todoOk = false;
  } 
  else {
    $("#last-name").parents(".form-group").removeClass("has-error");
    todoOk = true;
  }

  if( !celular || hasWhiteSpace(celular) || celular.length<7 || celular.length>10 ) {
    $("#mobile-number").parents(".form-group").addClass("has-error");
    todoOk = false;
  } 
  else {
    $("#mobile-number").parents(".form-group").removeClass("has-error");
    todoOk = true;
  }

  if(confirmado) {
    confirmado="&#10004";
  }
  else {
    confirmado="";
  }

  if(todoOk) {
    $("tbody").append("<tr><td>"+nombre+"</td><td>"+apellido+"</td><td class='text-center'>"+celular+"</td><td class='text-center'>"+confirmado+"</td></tr>");
    $("#new-guest").modal("hide");
    
    $("#first-name").val("");
    $("#last-name").val("");
    $("#mobile-number").val("");
    $("#confirmed").prop( "checked", false );
  }
});

Cual puede ser el problema?

Gracias!!!

@germanescobar me podrias ayudar entendiendo que tengo mal en el código?

A mi me parece que esta correcto, pues funciona como debería y realmente si agrega una nueva fila en la tabla, pero me sigue apareciendo el error

Hola @sfonnegra
Estuve revisando tú código y está muy bien. El error parece estar en el calificador. Intenta cambiando todos los let por var mientras revisamos que pasa con el calificador. Estoy atento si te soluciona el problema. Saludos y happy coding!

2 Me gusta

Hola @sfonnegra, el calificador ya soporta características de ES6 (const, let, funciones flecha, etc.). Sin embargo, ten en cuenta que en la práctica no es buena idea usar ES6 directamente en el navegador, es mejor utilizar alguna herramienta como Babel para transpilar el código a ES5 y de esa forma aumentar el soporte a navegadores más antiguos.

cc @jeferbc

Saludos!

Si, en los comentarios vi que habia algunos posts al respecto y el link a Babel. Gracias @germanescobar y @jeferbc !!