Я пытаюсь создать всплывающее окно (с jQuery), которое может обрабатывать формы, и по большей части у меня все это работает.Единственная проблема, с которой я столкнулся, заключается в том, что при успешном входе в систему и / или регистрации PHP отправляет местоположение заголовка для перенаправления пользователю в его «дом», и это создает бесконечный цикл перенаправлений в div, в который я загрузил форму.
Как бы я начал читать, если в запросе на публикацию был отправлен заголовок location
, а затем получить фактический URL-адрес, отправляемый как новый location
?
Это то, что я пробовал до сих пор (среди прочего):
$('.register').live('submit', function(e) {
e.preventDefault();
var form_data = $(this).serialize() + '®ister=register&js=true';
$.post(site_path + '/register', form_data, function(data, text, xhr) {
alert(xhr.getResponseHeader("Location"));
// $('.overlay_container').html(data);
});
});
Не уверен, что именно я делаю неправильно, но, насколько я знаю, что-то в этом роде должно работать.Я также попытался сделать это с простым пост-запросом AJAX без ожидаемого результата.
Просто заметьте, что заголовок местоположения не всегда отправляется;только когда кто-то успешно входит в систему, регистрируется и т. д.
В идеале это то, чего я пытаюсь достичь:
$('.register').live('submit', function(e) {
e.preventDefault();
var form_data = $(this).serialize() + '®ister=register&js=true';
$.post(site_path + '/register', form_data, function(data, text, xhr) {
var header_location = xhr.getResponseHeader("Location");
if(header_location == null) {
$('.overlay_container').html(data);
}else{
window.location = header_location;
}
});
});