Mam ten kodjQuery pocztowe zwraca żadnych danych odpowiedzi
$(document).delegate('#login', 'pageinit', function(event) {
console.log('inside login page')
$('#loginform').submit(function() {
// Get the value of the username and password
var myusername = $("#username").val();
var mypassword = $("#password").val();
// Post to the login route
$.post(global_urlstub + '/customer_login', {username: myusername, password: mypassword}, function(data) {
alert(data);
console.log(data);
if (data.flag == true) {
alert('123');
console.log(data);
jQuery.mobile.changePage('#page1');
}
else {
alert('12345');
console.log(data);
$('#errmsg_login').html(data.msg);
}
}, "json");
return false;
});
});
Mój serwer zwraca skrót z kluczem flag
. Jednak ten kod nie zwraca mi żadnych danych do konsoli lub alertu, a prośba o podanie powiodła się. Co ja robię źle?
im używać sinatra jako backend, i jestem pewien, że mam tam ważny json. Więcej mam zupełnie podobny kod na moim zapleczu dla innego fragmentu kodu js, i to działa dobrze – Avdept
Jeśli używasz przeglądarki takiej jak Chrome, otwórz narzędzia programistyczne (F12) i obserwuj kartę Sieć, gdy twój kod tworzy żądanie AJAX. Po kliknięciu prośby Chrome wyświetli serię zakładek (Nagłówki/Podgląd/Odpowiedź/Cookies/Czas). Jeśli spojrzysz na zawartość karty odpowiedzi, powinno być całkiem jasne, czy masz prawidłową odpowiedź JSON, czy nie. Firebug ma podobną zakładkę Netto, jeśli używasz FF i zakładam, że IE ma jakiś odpowiednik lub używa Fiddlera. – Barrie