Mam stronę, która ładuje inne strony przez Ajax (myślę o klatkach, z wyjątkiem bez ramek).Jak stwierdzić, czy strona jest wywoływana przez Ajax, czy też na własną rękę?
Oczywiście wszystkie strony można nazwać niezależnie, więc chcę wykryć, czy są one wywoływane przez Ajax, a jeśli nie, przekierować na główną stronę Ajax.
Strony to strony php, więc mam do nich dostęp również.
index:
goto = "StandalonePrograms.php";
var clear = "<br style='clear:both;'>"
if(goto != ''){
$.ajax({
url: goto,
context: document.body,
success: function(data){
$('#mainwindow').html(data + clear);
$('#mainwindow').find("script").each(function(i){
eval($(this).text());
});
}
});
}
http://stackoverflow.com/questions/3696650/how-to-detect-if-file-is-being-accessed-orrequested zobacz wybraną odpowiedź –
żądanie AJAX wywołuje stronę ze specjalnym łańcuchem zapytania. Nie jest to niezawodne, ale może być wystarczająco dobre. – Blazemonger
możliwy duplikat [Jak sprawdzić, czy żądanie jest wykonane przez AJAX z PHP?] (Http://stackoverflow.com/questions/4301150/how-do-i-check-if-the-request-is-made -via-ajax-with-php) –