Mysql
 sql >> Database >  >> RDS >> Mysql

jquery ajax non funziona senza punto di interruzione di firebug

Il motivo per cui hai questo problema è perché hai eseguito un asincrono richiesta. Ciò significa che if(rspns == ".") verrà raggiunto prima che sia stata ricevuta la risposta dal server e il risultato sarà sempre false .

Per racchiudere questo codice in una funzione, restituisce un valore booleano e non richiede una funzione di callback (una procedura di blocco) dovrai utilizzare una richiesta sincrona:

function validateEmaiAjax(email) {

  // This is the correct way to initialise a variable with no value in a function
  var val;

  // Make a synchronous HTTP request
  $.ajax({
    url: "https://localhost/Continental%20Tourism/register_ajax.php",
    async: false,
    data: {
      email: email
    },
    success: function(response) {
      // Update the DOM and send response data back to parent function
      $("#warning").html(response);
      val = response;
    }
  });

  // Now this will work
  if(val == ".") {
    return true;
  } else {
    $("#warning").show();
    return false;
  }

}