Spójrz na to: http://docs.jquery.com/Ajax/jQuery.ajax (kliknij kartę "Opcje").
Pamiętaj jednak, że połączenie synchroniczne zablokuje stronę do czasu otrzymania odpowiedzi, więc nie może być używane w witrynie produkcyjnej, ponieważ użytkownicy będą wściekli, jeśli z jakiegokolwiek powodu będą musieli poczekać 30 sekund z zablokowaną przeglądarką .
EDIT: ok, z aktualizacją jest wyraźniejszy, co chcesz osiągnąć;)
Tak, kod może wyglądać następująco:
$.getJSON("http://example.com/jsoncall", function(data) {
process(data);
$.getJSON("http://example.com/jsoncall2", function (data) {
processAgain(data);
$.getJSON("http://example.com/anotherjsoncall", function(data) {
processAgainAndAgain(data);
});
});
});
ten sposób będą wydawane tylko drugie połączenie kiedy odpowiedź na pierwsze połączenie została odebrana i przetworzona, a trzecie połączenie zostanie wydane dopiero po otrzymaniu i przetworzeniu odpowiedzi na drugie połączenie. Ten kod jest dla getJSON, ale może być dostosowany do $ .ajax.
wiesz co „A” w AJAX stoi, prawda :-) –
to na pewno ja nie ma odpowiedzi, ale jest to ciekawy znak dobrze zaprojektowanego frameworka, gdy * to * jest mylącym pytaniem zamiast tego, jak zrobić to współbieżnie. :) –
@Ed Swangren, tak, ale AJAX nie musi być asynchroniczny, JavaScript ani XML. :-) – Nosredna